From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752320AbdGRRN3 (ORCPT ); Tue, 18 Jul 2017 13:13:29 -0400 Received: from mail-he1eur01on0098.outbound.protection.outlook.com ([104.47.0.98]:14361 "EHLO EUR01-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752246AbdGRRNY (ORCPT ); Tue, 18 Jul 2017 13:13:24 -0400 Authentication-Results: linux-foundation.org; dkim=none (message not signed) header.d=none;linux-foundation.org; dmarc=none action=none header.from=virtuozzo.com; From: Andrey Ryabinin To: Andrew Morton Cc: Dave Jones , Linus Torvalds , Alexander Potapenko , Dmitry Vyukov , kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, Andrey Ryabinin Subject: [PATCH] lib/strscpy: avoid KASAN false positive Date: Tue, 18 Jul 2017 20:15:23 +0300 Message-Id: <20170718171523.32208-1-aryabinin@virtuozzo.com> X-Mailer: git-send-email 2.13.0 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [195.214.232.6] X-ClientProxiedBy: DB6PR02CA0025.eurprd02.prod.outlook.com (2603:10a6:6:15::38) To VI1PR0801MB2733.eurprd08.prod.outlook.com (2a01:111:e400:7b7c::26) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: ca4930f8-f187-41ad-d27d-08d4ce004993 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(300000503095)(300135400095)(201703131423075)(201703031133081)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);SRVR:VI1PR0801MB2733; X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB2733;3:bXLkC/XF1aW7TVr+SZgMixcLsjj320vn8vKrd9aQtKR3X+PfLXYFMtUKjnEqkAZeeIvFr7ggrcn6HyAbC9sAtLb+zx36s3GRbXvWyw8undmDmonQ/bxgtwffC39PEGT2KTrm1WMXr9NH3c3cN/8jN+76j76dwSYGJHywY6ywqkwiGNAjwCtUJqQQeImnR3l5HwbONxjpdyqZMWcfSbVmU63cn11HcpW9+NxQeWotlu6JrsrIfOfozyCh+4Fjr7f3rCfiVPz5++h/lVlJkpUi/xQfadRZNkew5IIBS8I8K7rlR8iEqfHJo1Fna+vBZ3Eevpn4C3MO+Ukrhb91CTCNuy8jgSXLqJu/idXWrplRmQQIBRujCSEoqfUz4YH6iphjYiOLvAXeANpcNuJUIWdjfCI5xo9zjb01NHBRJIye7mb6bisbPhnLP9lPBk9yeCrgoJGrivKuo0RIup6Oee4ypO1tvwSXGakfG1Q35mjQuE3IG4SASUARMxVpdd7CrmY0E/XspWaSeQZ3LhzwhAcJs57AZHoFOsYTn+G8DU4tKP/GwJ9sy3FSoTfaS+Q6mJKjYXFXp8EULvH3OtAvtA1Bw3CQ9gc8D6g+MC58SMfVo5uWN9vjWp7ELjbgEqvHyLZCW2XxOenizQcktdYP/oWyXZxdLVKAyUx67Uc1z3C3n/BxDfBhcMrQNDhn3sumKvN/DfFIoaQqjDpxubavN2vA8+EshuND5+16iGZVucgkhnQ= X-MS-TrafficTypeDiagnostic: VI1PR0801MB2733: X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB2733;25:b52XwPw9BxX08vFiTYY9EeEDcqFHk2rYYmFM5YM+v2mYU2MVLM/DdQyDUttokO4TUO0pTleizp3ZwYw24uA73GZY827g9ex3YRPVyf10QxqJKNgBTlUFuvaZHDcFQQNXWo9o70kTQKMQl0ySQGBPqswvdSAmqozKU0v/bFcz7Ozxlyw9+j7sHRklDPx2U4pZKsGdjK8EKqdZw31nrXwscoQJ2h/UoZ8Mvl4q6TTXGHtsvKNWH30SdX34tCqJxs2tpGV013WaKS5HqcggiFrzv4nlObnHDyCFY1efChfVHWH0/3KeUWI5Z8+ONC+qdniKdJ/Hxzt2SbQsMOGdQdt3L/I95a7HxYUVz/vuYJRUpLmN9qheFCNmnbrSFnNgDBPQVo0dq95uBXktKiBYeIgiVQ0P07HHR5JP5n/62GkSbijN+e9m0al3wVy34Lg12aMbccRH5Tt5zOmNz3UHqx/Drrn8LJczEhvU/IgSuqFP4aUp7aYpHZLTKdULZduo12e36MLuLDU9ttR4RKNyS2ZiZ9k0qnFmgQQ7+RiJanQsJ5jpVz6baAmDhbTE50srDuaGjEcZ/B4FP9qRompG6RiAXZ3i9q+ftWnUEcJp9X3I+B+KCJv6ojsscqgN7M20KNphIVgw7i6Rd5D1R0rz1FM7tVcOdyiAIlwYnuug99kwKWW4ArhGsWitwS9jKNFHpSTvwi4gD5+/p+dwP0byVPOZlVxtPJGWuWek+dqt8XzaJxj93zy68Wj2sYfNXEhftdi+eE2GQM9kTlGQUtR4OjORmVa+YyTrknXy2TMVsCZmvq7vvlsyXQ83GvctHouvslqqUnO3abYQSX/9XUUA5GrgYPlsmHBC+0hlcg9/gvemjOySwM/Z8jdosUg2fztN1Qs776cp7xEd1Zx1Md0OQBiG1wl64wYs5gapFQwDwvEPnUA= X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB2733;31:l6V2m4Dq0BjJmiPZFjRWTDyEp6puN215Hp1C0HgT0jxneJsb4FCx0PUmq5WldPK6IjaoM/IKe6rccbWV/KHCCAYdbLZX3CuA75pOk5Hgf1Ug/67PKyCeBvaSYMRy7PwKzbkAs9Fdy1K1SYgzxIdv03GQ2oeRvGfdWzDTgoFjEBlbb87FIO7csHyEf5uLIPpaPQkAfJfSUU1eSy2gi9dEyf3KyDxQol6a/hK83Ee85CPMxa53jiOB2udpYcBztlqtkXaOM1XdDQNWDBtNVKJwy6lvjeJMo5pkNL8zkC7jfCasBydtojP+DemaMf0y2eTQe1LYJW950FZXCxW/5S3WBETQ3rOzX9s8ECUhc6sCauBwd+3Iv2R9y8R1uv1AupO69TTcTFv4GlLvVaPC2IG3UZIZbhazou2XNfcn0x9qCg0Ii0h1HbeKc7k8AFALLhCjiwfHH0IGen7V+ZP8eO4OWWDqd8M4k50DKFAjOhfRJ16bUqrshz2pT+lHawV38qJr4/8fWqPFTctdccYF3dqGPTxiGOCrYytedkW6UMYAIAm2tAV9mjZahKFv865Z3/B7blPBI2B0ZqXsHkIi6A7FgJifoSUage9DjRZs5pAWYp9XjHsRVJcuGFtr2v7gfD/c3vqVtBmJSvKEH/NHHDZjud6yYzbK7JNdNqLyeb7NsJo= X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB2733;20:HpXpfjDtwFxX3A5adtcOC9l+BULfM4ryalv/RxU485bgl39KiBjf2hmFzCC+dlc7LXoSG9bKqC0OC+lpwH+SJ8NlNo3m9WJwiZV2cM9V6aKpPQXI3AfkjQruijVner0vsYHAXoSt4/DESuTEpqBJ8n5nglR6phx1IbYcZPxI0SlIGxicrXkISu/WMROy4lCyZ1sU7lTaBzBgZdoGBVslSAPaBcNYIQpXuZXz80xBJg4hKZUdbX185EeC601RGehMRRb09lE31AxZ0K5t2pgLEFFVc7arGyrBXcQJsD2ELyfnYCiiNIrZUK6IUfYaqbaqUOfJofUvVvmi2YcW/CU34LQ+87HcqahF7oupcLKPHfs6HIBpDu/Z572C+OmrmNHEbi1fI6vKTe3qHow2kvbELZYUvzx8nUoiWnIPYpaeUfc= X-Exchange-Antispam-Report-Test: UriScan:(236129657087228); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(2017060910075)(5005006)(8121501046)(100000703101)(100105400095)(3002001)(10201501046)(93006095)(93001095)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123555025)(20161123558100)(20161123562025)(20161123560025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:VI1PR0801MB2733;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:VI1PR0801MB2733; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;VI1PR0801MB2733;4:jA3b/GIr/BvwiLWhr40dFAGDHmZgeqLnyRS1RGex?= =?us-ascii?Q?dmADLGU6/WnPUAcDzKribJogEh6tvWYWA7Cje14NTCp0lkX2i5VrO6syjv0Y?= =?us-ascii?Q?ZUUVbIbU9Cqnxu/8wqWVbWhlpfitTWUGRVROpGklxqRPj2WHl6c+Xvw+UMZd?= =?us-ascii?Q?cwzGnq8pUJUzTXSONAma4ZK6L+d4DljIPQnbWC3ksoEkjYopj4+4FOaml+YH?= =?us-ascii?Q?ewk0W1OWskJbs8QOrDe5kTqNgNH5thjZLh06Ahj5XRVRFHN9DrN2eoAkKHFb?= =?us-ascii?Q?Gif1L5asK5xiwqe6rUHBEHEN7X46RkPSjuyajHuOozRR6an/EfZhZ3Y29nx0?= =?us-ascii?Q?Fz6wH8vWhtGLpvKluNoW6qwNY8kja0ya2NKHgY4uWjrYJms7n6+vrF2PlmMD?= =?us-ascii?Q?JDj8UXGaWIUVJ7FTaEYfBo+Yb/l87kTBlhyhZ/Tofd+2chYSLSTWD4en8xy6?= =?us-ascii?Q?oEdfB1V/2UGUtQpFzPMhv8DllELVpuGNQVOlskyh7J8eQQfNvhino08tkgmO?= =?us-ascii?Q?+qUdMvBjv/33YicD1ZtKP15uprUHbX5h8qZPTSvyxfqcTh1TfxgtYWQ9b891?= =?us-ascii?Q?+c49ZxwGM7I7QPhB3AmHPA9WkCAuM9BrHBTvrM5tPdQ1lWbB9uPaq+qDvhti?= =?us-ascii?Q?oltrhjXmYflumAJlhkR1vrkZaeUCE5JhSaPWWnffSByKUhGYVCYJsDo1/Xgg?= =?us-ascii?Q?MY8swj/mA1JxdOo48NJp8TXfTuSPB8T2hvAg6A0O4AJ2vGpvIMpOP8w+XqS2?= =?us-ascii?Q?9P5aYMUp6fAryF+xl7MjC/6SpQPua3e8pl1Yov4baZpQUT4naZqts4+7iych?= =?us-ascii?Q?8TsSddWWEnjznpWsculU3/v+IfumggsXPo3rwdGWKFaI0M2n3vaZgHKYgbDI?= =?us-ascii?Q?+7/hwDs/subNEI9DZWY8XtIT8j07DXnM3efwUzrEv0MFqAAgxKQTT/AGxlSK?= =?us-ascii?Q?6KEI1+VybjA2xNh0RoZFFwUbE1RfYuhCe3BL5io87eK9wGLM2IL68OXC0Sf3?= =?us-ascii?Q?7DHiDMC6pdrR81BpRx5BbuET31qZtT6k3xQIEPHaMo4bLp/qYQqJx7BMqQXi?= =?us-ascii?Q?D6fzggrHx6jwzEDna2gmoAMiVNf/+clDzTfHUCA8cI27fbfY6YjbDAcaXDAT?= =?us-ascii?Q?Cqd38UZTLDg5xzU3WEBmJ8x54AeTPckC0m5IPHLFERl8UPYQITYuoZryEdp7?= =?us-ascii?Q?+u/aOGtNDBmcrwz9Hs9Ox481G/ySVa6FVMeenLUwg+rK2CZZapdsmtkxgw?= =?us-ascii?Q?=3D=3D?= X-Forefront-PRVS: 037291602B X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(7370300001)(4630300001)(6009001)(6069001)(39400400002)(39450400003)(39410400002)(39840400002)(1076002)(53416004)(48376002)(107886003)(50466002)(53936002)(110136004)(3846002)(76506005)(6116002)(54906002)(305945005)(6486002)(478600001)(7350300001)(6512007)(47776003)(38730400002)(42186005)(50986999)(66066001)(5003940100001)(86362001)(8676002)(2906002)(6916009)(6666003)(7736002)(6506006)(81166006)(189998001)(25786009)(4326008)(36756003)(33646002)(50226002)(5660300001);DIR:OUT;SFP:1102;SCL:1;SRVR:VI1PR0801MB2733;H:localhost.sw.ru;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;VI1PR0801MB2733;23:4GIDzCau27REJGgEUSpkf7mU7wHaql1ZPn1Gr3L?= =?us-ascii?Q?zAA3WX+D78LOkIfsMjS/UcUj8nL0fWcZTrQs/Q8ncsiUf/Ulxyg5CZoWJA3k?= =?us-ascii?Q?ZWRA4jxz86yR7wjxzeQKOZqm9Cg3uIdKIsCJ7EqMgP9bQRQwurOERO7e7PW3?= =?us-ascii?Q?zhXXHjq8R8RHG/0hquvzIERtZyTPoB30m/farmAWVjjk2PQIH8P73U+kvooJ?= =?us-ascii?Q?8ggPtH4CywmFW+WW+DB8cJsX7ykec8aAgq9KlLtvakApwCHI2uckoalJJebm?= =?us-ascii?Q?XwmMggERqoLkhGTwGQAovoNFPmbHjeOZlJlrB+mqYD+81KF0PZ7ilLbiGv2r?= =?us-ascii?Q?JzZuUGinWTY9OOEvbj3pIbWER9TGX4mdN/21FBeNOFT0fcCKBR8WYP5JwOcX?= =?us-ascii?Q?BtJqen7FhsU7CT+vvYm3ytzwePyIGtUvKN1FevXnHte1maODHFTURiBrsn84?= =?us-ascii?Q?/E1DdQZnAjUt97NWOOeR/70Hp2od2Bur0wc86dwBM1O8kceJAdHRFSPXcbVW?= =?us-ascii?Q?h5+LqkTTuQDizD4IGb2cC2+DdrRR8h33pjQaJRGvq8F0xC5+DFSEnUGpBA14?= =?us-ascii?Q?OOVkuw8mzick98tbaLo1SYEN6W6VMj+gpygSPu1s7d72uA9ZLKQk9tndGtm4?= =?us-ascii?Q?ksrsIl2CBWSoJrX58hiy08sGl+tyJcDKPv/WVgzDwahCQCGgSuhRN8ylB17Q?= =?us-ascii?Q?F9XR3Wk6LdrIJRWfgscFmDV/W5yGigpltYI1eRIhkmX1aIr1Erl2QkyNhYdG?= =?us-ascii?Q?kINlyKYzFSfpO7OHJaIUbblNOU2XGdRDwFY1n5l7OKPnsBLlpjvSg7GKD0g4?= =?us-ascii?Q?A1XylOTbYCbgaFG+NpO97uGlwMqvNKz+NYy6Mga5yPefEhHh4ZyKjjjGS2cI?= =?us-ascii?Q?HcJOpZo8kbgyuK80tcJAjEHIbz3etYQxGnvqagZju0lemVcE7Mun0HjRbxC+?= =?us-ascii?Q?WvC3H2wre1oynrAREuuWfiZyLpeNCuuHFWO1vKlczc0rbvZFHFOBU2qyQPWg?= =?us-ascii?Q?KoAjjLE/RfjGdIj9M9E5QmuEya8ZkaKqxmGmE9O+cbjQCR0CCD9zlU9N5sc1?= =?us-ascii?Q?SmdJP5bYdbUlGSk2NdphEkhI7dgXlp81Pz3eVBW9YJWo/v4LckvknysKTi4b?= =?us-ascii?Q?7Ht5SkKKgIZqpv62qwalE2YK+RX/3DCAq?= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;VI1PR0801MB2733;6:z7uyacjZJPv450EVzY1n5xWaBGlBRFKGIRfQREip?= =?us-ascii?Q?fl4HRibO2kWCnFXWrlxy04ejEG5iBJVa5i7SHaE74yawXnGwOrIR+TYJeOyd?= =?us-ascii?Q?UgS9nbndn++aWENsbSfgULAuG8yTktD7GVgU6ObxHLVuE9zLsfctgCdwc2uM?= =?us-ascii?Q?lpwOJgXU1bH1dfpv+VMpKVKCNuNhxeJpopqx0BiVSQ1TDLFd8JP5PmDAXwNO?= =?us-ascii?Q?rpDxsfC1+dWkL024KYIovOfs6/S2Pe0sLWP0nVpFGle5r3ESn1yTavSZzZAU?= =?us-ascii?Q?6OyMAcnrYRq8yzw5Oytj1i4sfNbb8WIMrIghLrYa1Ilnutrv0O+gZ0GB2s2V?= =?us-ascii?Q?BvUlQGP/RrkKHMbCm3/CqfU2+NCppRB4QVGg+qaZSQRtsimu4QjVbVgM3I9E?= =?us-ascii?Q?5BZ9IEPhoB+4dugSSs6/FJ4Nzsj6Oy3XZKNs8Tks76x6HshdTNE0Ijpw9JxG?= =?us-ascii?Q?Rmi0fTF9pGRIVKzwNlShKp4HqBKdUNDeHmgDpmXvJvwYmdEFTPAN1M+u8Y1h?= =?us-ascii?Q?JtaBmGhAuj0Fyqa2e95lOkp74BGD7M/pVr8fZqQGP8b0iLofQ3nTYqfs3Q6q?= =?us-ascii?Q?BHldwQXbOdAeZv1ZQ+1HXbfWoOYJufaiVzZQRRrIufGazlHp3KjdwqabuVK8?= =?us-ascii?Q?Rf8BeLndtlTzfm6W4j9DVbmeo+rDSsD4rI/uJtNl54AxBAKgTEXPuDFTjyfC?= =?us-ascii?Q?vAme6DbgHpH2YpgKxogI+IYX/Xsyh/BYLxqRPe7pooDCucfXWJmq8Qja4/5I?= =?us-ascii?Q?jKFfyo1xlRTec2Z73hREgUYCb/iHuUtQlEw4PZBN2vsHnbk+nREnEwN6cXDm?= =?us-ascii?Q?dVFhHYyjZ1L03DliO614Tj4fr80BYBphmP/S4ZsKgaFgaXp6OYQbGXpTQ5sR?= =?us-ascii?Q?RuOxPV9RCFrb7vOkOuutGhRrRZQ2KwMCRt5RG4fXqO81B3ADh1kpfawwjQez?= =?us-ascii?Q?oKiF1pX0RjppaOtN/9lB65IbZ1f8UMzdtvmwD+ObQeh+Yy+WUzUlmXCGr1Xt?= =?us-ascii?Q?4DE=3D?= X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB2733;5:du4Zd+npqepjLX6kTYABEV6jKxe7f3AVeQI/p1/96eCJ7JcqYL1dGHjkpMZEB7krOQBQbfMwcsh8t0SceZYLKAFaevz+nVlQfloheukx/ZJ8sZOcDJ22s+NACp0v0ejosUU8feKhleDPnKMWkKN0mtbtE3Oao8yfpDMxk5k5+WDMcnTl94F4bEeUVxzu3u/Vr4YWvMRyAQ6Lq8xsIz4Q+IQ4c1HpUer2NWWskb4HJ03896HM3iz6bQsq4+sEcywu5JL1zg1k4kmG23O+GzWpn5qHPjkkc0TZaEkRuGzMWHE+yZadTdhSZtNp644ZPwRopKetAsP6bvg179Y9lQl/7RY5Rj4KUtjBhmcHON2bwgWLLFOJJkkyEiSlRydwi7Pg4MyFvHp/P2t38hvzqIFQCoyhnmDKCp0P/4U+kM9WuTFa52Lk1oKJZWL1iSZ4W/LB3SgqE5NfVPfwTc4M6pVDYGmp/6DUM52WOL3poHKCxIALDO8HT/orX0M7OBemNXra;24:7sYkdUl8bGpyx4QRnS2l0sZ3EYQqfIcnuTDXMePpPG1Ocb4yOBVNxQvowRjkWEYbUpWVMD8R46HbwL/mnl7Wxmg0eOttTwQBGt8/vK3YA1Q= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB2733;7:/QbnEvTzbbUxrfdu+ClNzKXGtcBt0TD4YgfVtMxCYK5HHtLnYfOEhtstFyB3XUChF6zyX4ZNqoL2IzH8dZqcIwSkObNxVYf1JE6EcemE0FfTlp5+mOuA1gHQ8jfmY5uPKoWowIkoBcAMNN/Ki8lYzGl/FAOYdkDTvSKQ7fpXoq3Njzb60TLVyh77lMXvT2Fuud0FlTWVvoTlmFUpx1YJxllrUqBfhhXOZeVx5fHV+uWZ6lcjb04i4SoVJa19sJx70Kd0fEHFvEAFge2vzTSMhnqT+mSkdNvBT1St7d67E1UZM6cJWwDtBoTtYA7IJgQ5xS4vbftHEnxq8H0oPU+FGIRfUUMh2Gjd5WC+KoJzKIWvFI3Ejaf1YjgLxDhoYbbutoZTAE42PVdBhbgV8ouwMLfCICaizEnAvFtnQ68p8oYJW6oWl+gk75UcGijof0tNdWjn9bQfqn7JzVQGJfmc9hW5bdEIKcV48iuGEqB22GXSvfimZlVEZw/uvgXllBAtey3hj7Fwyy08LNhBZtQhIr9+Kjv1IPJD4FwNJP8T/JgGOWjj1jOkjljgLQ14+DIFNoJDAFgAS+U+2jgC9Q/jfohmCjBmtBQj5iGmhy4/hNed/DPDNLLkARDGJ2/A98yauRABAed6Di6E3Oyge/DiEKhRncGQN8rGWdT0aglF3gCM/VJIwG53Rz/ll4B/PeWD+eVrgToUUL+tH8S+TpXdMz5afyZrpjo6DmS/pHjYkCLjztiytv1Z6Pb8eJZklHg4N+k3X2qI1Rv05/fJ8N7iAh+vV96p5BsT5dZVWTG35Ow= X-Microsoft-Exchange-Diagnostics: 1;VI1PR0801MB2733;20:KpBn6JU5mMlklXP5PcW7tVJX1qx9ml2w9PfLg8Y62udNgG/JdB2HYTdEcUkC8RiX247IPeKrTwotFp9B9Y8v5e9+U4m0oJ5ipFon9Xt6/5VotU8nkLGAMTBg+KAtFBng9kjt3NweVZs0pD9HD+dvS6UOApMjGnkg3lHx55aj9/c= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jul 2017 17:13:18.5516 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB2733 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org strscpy() performs the word-at-a-time optimistic reads. So it may may access the memory past the end of the object, which is perfectly fine since strscpy() doesn't use that (past-the-end) data and makes sure the optimistic read won't cross a page boundary. But KASAN doesn't know anything about that so it will complain. Let's just fallback to the byte-at-a-time reads under CONFIG_KASAN=y to avoid false-positives. Reported-by: Dave Jones Signed-off-by: Andrey Ryabinin --- lib/string.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/string.c b/lib/string.c index ebbb99c775bd..8b93d2519d5a 100644 --- a/lib/string.c +++ b/lib/string.c @@ -199,6 +199,13 @@ ssize_t strscpy(char *dest, const char *src, size_t count) max = 0; #endif + /* + * KASAN won't be happy about word-at-a-time + * optimistic reads, so let's avoid them. + */ + if (IS_ENABLED(CONFIG_KASAN)) + max = 0; + while (max >= sizeof(unsigned long)) { unsigned long c, data; -- 2.13.0