From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933621AbcKWIZb (ORCPT ); Wed, 23 Nov 2016 03:25:31 -0500 Received: from mail-db5eur01on0108.outbound.protection.outlook.com ([104.47.2.108]:22782 "EHLO EUR01-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S933320AbcKWIZ2 (ORCPT ); Wed, 23 Nov 2016 03:25:28 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=aryabinin@virtuozzo.com; Subject: Re: [PATCH] kasan: turn off -fsanitize-address-use-after-scope for now To: Arnd Bergmann References: <20161122225424.3739294-1-arnd@arndb.de> CC: =?UTF-8?Q?Martin_Li=c5=a1ka?= , , Michal Marek , Alexander Potapenko , Dmitry Vyukov , , , From: Andrey Ryabinin Message-ID: Date: Wed, 23 Nov 2016 11:25:49 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: <20161122225424.3739294-1-arnd@arndb.de> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit X-Originating-IP: [195.214.232.10] X-ClientProxiedBy: HE1PR03CA0023.eurprd03.prod.outlook.com (10.163.170.161) To DB6PR0801MB2053.eurprd08.prod.outlook.com (10.168.86.22) X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB2053;2:0yM0f7N1Bjh/WEkhzjvrnTg1pN567O1/cZOZHHs8aQ8kPfOI08XaXcc681Szb6f0Or+9WVJMJrIx3G7kkfp3jnTitvUBoxYahNUKQDvSdo1yRvY6UBTI5FjpZUHx423kJg+apjlf4OYziP1HS+fmV2v7EPAPVwIpZJF0//OTnHM=;3:w6Nlq8MjHODSrY00ydjOiQGIcrNxuyvIO5X+V4txIzimVBbEPqZhPm969IzbPsuZdFXoRn3fgZEFfewsQ8k/vA3tH/J7aF/WMzawpTdD1SWRFd6tn5Zv0Z9CJ1z6x7woAUj5KS1jScAY7rFYvsUsPwpS+t+aSfxS7OYkgb2xom4= X-MS-Office365-Filtering-Correlation-Id: 9b3632a0-9935-46d8-172b-08d4137a4667 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:DB6PR0801MB2053; X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB2053;25:zppD7nidamLoprbky4flH/NpsEQRbxiwpvH/UatvahUP3hp4I3NOwYuR5h8F1xwltnFmxSpjmXYzP600DjBJ1K8jtsFPE0gFWCkB/VXOm1mmvFf+M3kqB1zydkiBPa2X/wjCzbjd9WO43C23o7SgXwdDmuRb4PzXwpxRcAJET+xJHcBKo/i5aP8z78MZTP8n3BbchRD8ltXM0GJzuxIDD8cHc6TNt0AFnlrFuyXJm4cZO6qV8HyCwP2/kMWxJGzL8KWgeGZKCuSajIw2JO+LGgleavlstrppeFutE2riy3nGHFMzKgfu2qs1l/xvKWLsGpIdf5fMyNrY23BtUMYGFLR5ZiDP1YiBbl4jOtjyQOlk/JRFlNVPSRSNmny7PpKbgY9wDq16DPnMljquyLY+P7oyJIF4OhlPTOh9TMy6xx7tukw+TUhQ0wvUR/KwXlGmNYRmSKYOO6EA4GYaVdUmQksTrgcrPmhN0uIcJTa2SfOYKTOM9u2LsPoR9OIqIAG3TnXOlHL2iti4zbb7ur+yvsbJ5tDR4DVhZpPjc2/TSahCGu2Q/dWzIDYZAPusFReW0yV6YPZfleGt1RnpC1T6THm+TVIkYfribOWBCQPvWQtPXDrrRh6Sgwpzaqgja6egoJOmegg8Aqdve3vJDap+cQdg/gx1wYTjWG4lLq42Yr9U7EYYF1otSMqGkw0TEnM135mCZCI5owPrkUjwilxvsz3yUw2VUrXeSr6Jmc2fNfOd2iZE9uNk0W8eE7KXrtqjwkviOdWmFEfn2wDOAgvQQ7OtIkuSVz4V6awxSjhObCckufznraCoVn8LPqvulNAbgEWj3A9D3r+Lt0gNMo51qijcNWJoKHN/fmrOpBcmU614AL7GokA1fopUobiE60uy X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB2053;31:gej+dgDzYYopJvQx1lWmQeRJ/RdELmKWVPEsrgSjonCa3ctF+LomVouJHPoPxb7wvo5sYAQzZb7E8z+q5AwG8onLRAjx7hFLSUnESryAL+67x0r2GfYWMnPuDejj4UJ6CPfNNeh6w37QS5uebvKV/lhNj7nUKORQzZKPXbhWGBW/HqdSb65fC2S6+BjNJ3kmIXWgtmhBTEdrqpnysDkAuw5Ng+ZEO3KhVTsHDcd3ba3JocKjZTFxUhmrFul7vQtEC3v3n4b9u/2CaCQMGDbglw==;20:VptEYlf3ctpjkl7ht32FjcyOxYqI6jX4opynIj0Mvgi1R0pNH7fdoPZpQ4fAeUfbhqZ+e2SX8B8z9/CW3oHveEvMcLRapV0KFkTB2DMkPR3iGBan7kKloKqO2yhPlwbeUC6g+00+zRCYMJnGSuy0EEf56+/rxRfp3apThWD8C/w= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(22074186197030)(9452136761055)(183786458502308)(211936372134217)(42068640409301)(7411616537696); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040307)(6060326)(6045199)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6061324)(6041248)(2016111802025)(6043046);SRVR:DB6PR0801MB2053;BCL:0;PCL:0;RULEID:;SRVR:DB6PR0801MB2053; X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB2053;4:p47EOmuBKb8zc2ShFYHUMVuq0U2e+6fvIVax92GG5VS+ZWvKS4O6l35hP07NNRXvXiV+VJop7MlWNsTTnxrPrgaeKxKcK7HoLIMInrQnQMKp0HFwAa2yH0PE8zAXA/BPHqt9ToYhPWmPGKO4dDMR9IWH67GJDOkHHdDjm0cDbnmIcgu8NpU3Z8qrvN9FNs7ByIN4fS0J8YHvVYgkP3Npyw64VI702BplpM6yBjTf4bWpRFOQf7N7s+p0RGwBkzuSjPQzBeDSoF4StBHuLR2Yhe3k+77hvwOlC45ALkeprny5Du5xFUHVmgWB69CzdLnCrvfZxc7sHhoio3YmABj8by/XIXmGkMT3Uigs1th+1oAeHrdZ1wAg+oOqOaBRQCKaQtiFNf2IaaH8621y4oyOC/uuFQL5K14aS984wVYMErBEGMWkVTC7FJP2Z13o3WFPyTcdl5ZE0BEbo99EkAfzn9xCshOdOwNRNlOCGET1+zTwI1SVBvcRSo9yR+4WvnYkYLKMdcHA9WNNdROHIS5bL3F8kCiaCKqeQ3PiPvEyn0NpeJn+w725fPU1KYiQP1Ag4/yjBpLE2rpbN/pACM2xYvlJKgfdIuEEwqU/H16aGHbvdxYQlzCCx+0XWbkogk9j+HX85hiI5Lkxaq9vo9nA9UUfJ2yj1Cz0B/vwagT7ZWWTxH9WMcUSO4LcsxrVWcJ83OxqOwhSbDxywO/vD2VbjjsPkF/C+EMeNzE4ybIhqtY= X-Forefront-PRVS: 013568035E X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6049001)(6009001)(7916002)(199003)(189002)(24454002)(377454003)(66066001)(42186005)(105586002)(65956001)(5660300001)(31686004)(3846002)(86362001)(106356001)(97736004)(4001350100001)(64126003)(6116002)(47776003)(50466002)(575784001)(31696002)(77096005)(23676002)(92566002)(83506001)(8676002)(68736007)(110136003)(2950100002)(2906002)(7846002)(65806001)(7736002)(38730400001)(305945005)(4326007)(6666003)(6916009)(50986999)(54356999)(76176999)(229853002)(65826007)(2870700001)(230783001)(189998001)(33646002)(36756003)(81156014)(81166006)(101416001);DIR:OUT;SFP:1102;SCL:1;SRVR:DB6PR0801MB2053;H:[10.30.19.223];FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA4MDFNQjIwNTM7MjM6UFhlSTZBdmJQYkozRjVqUnZKMTBCbUpF?= =?utf-8?B?QzRVUEh6TnpIaXdLQlRCMzNUQVh6akZiNTJqdHZsbm1yQy9BeE9OaVpIRE1U?= =?utf-8?B?WFIwTHpDNktNQTYxSHVDTFZsTks2TkFnZ0V5WTdBcTR1Vk12d2lHWGZQb3Q5?= =?utf-8?B?cEhETXA3QkRuWExTRmZ0aFZJeEVsTjhjc08yd2V4T2FKM2R5eGpIdE9YMTc0?= =?utf-8?B?VjFkWUJEWXJqOFc2VmFrcXVERjN5c0JoYzJ6SkFuUkVGZytCdElKaVlEZ3Jx?= =?utf-8?B?QVhDMlVHeVFHenE5V0gvZWtMb1UvOER3WTZMVUN6bkJ5K0o5REJHQXpaekxX?= =?utf-8?B?MmJsWENJUitvMlZuMy9HVTMzN2hjTm1yS0hKUDc5UVhDYktXckpaaThHeUhG?= =?utf-8?B?aHU3d2d2ZGRGcFR2NEltOHh6aXdKRGJKazdlYWdVenI2YmpyMDZsZVpJWlZH?= =?utf-8?B?QVdEU0d0K0dEcFd6aTVNbzA3eUZjRnkrR1JBYndzOFZRdVRCeDk4dXVsUTJJ?= =?utf-8?B?QmtOSFZsNTR4dHZaMkpBS1dJbzZyMEFqSkNaS1hOMU9FN2VvWHo4NDdTUzFQ?= =?utf-8?B?aXhRelhGQWVVWkh1VjlXd3B5L0p3eUkwTGtQNmozcTlzT1diNk9MUE1sLzB5?= =?utf-8?B?VXhLOThJMXRaTmQ1NTBva0wzRmo4Nm4yQ003c2VyU2I3VzBDZjBOOFM0ZS9P?= =?utf-8?B?NXliQWk5a2ZtcWd0VERKak5TcVdMWllBand1THpiMkVZc2M5alY1bkRmUG9Y?= =?utf-8?B?djhpQ2x1TGtCZE9uU3NPVW5CZ0VUU3dwcGhLU3dRVjlrSzhKZHpGTTM1UWNs?= =?utf-8?B?bzFCZndzNG5UVnBTdHZoWG9lQU1NeEhDdmo1QVFadVZzNHBQc2dkSkxqOVVv?= =?utf-8?B?N2YyQ0YrQlpHZGtBRkpTTmdGN2hrUmFZVVlMY2NHVTR3Szh4c09GV09KSWEy?= =?utf-8?B?dWxEZ0h6aGdEbjBKSEQ4K0FpbEhMd2l6V3cwRFV5enBxR0J0cHlKSzFQbjdy?= =?utf-8?B?d09EQjVhWXNQYTZsNU1ETG4vS255TjZCMEM5ZXcrZU1qY3hoamdod1pKUXNH?= =?utf-8?B?T0tvTnA5M21KVUVHTTJkSkd6VGxZOW9Hd1gvL1pNemhtVHZmWUtHVHp1bVIx?= =?utf-8?B?MkxRSVFaZEppa3J4OVI2anRrUVNpWDZoK1F3bHRCSDI2dDB0SGRUNzBMdU4w?= =?utf-8?B?S3NGcVQvYldJSjNkTjBZZG1DaEhndWZBd1VHQXFsU1BHd1Y5SExJbmpqUHM5?= =?utf-8?B?eS81ZXFjWHdYTW5SUVoxZmZqV3ZaaUlBMlprOEUzWStvaWVhYWZVNmdMM3dj?= =?utf-8?B?eXdYdndEK2w1VzlLc3M1Ylg0VnZ1S0NPYXRxRUR3VU43dnZ6cUFhZzIyRlhD?= =?utf-8?B?bmF6OW9uZzB4VXl5Yk5vckN1REMxakRrS3JYY0VHSEYvODVwR1FLZzlzMkdT?= =?utf-8?B?U0REQnJMbzU1d0d0T1hFWG14VlQ0OXExMGNLZXFzSSt2UEdweDlPN1E3Q0xI?= =?utf-8?B?czJtUWFFRGptZFVrZFYxQVAvaVkzN0g2alRLaUYyYkROeTR1Q3BOMG4xeDBR?= =?utf-8?B?bkk1SmdVcjZFUjlIVW5kcDdySWZCQ0NGdmFFdlgxb0tQSXJPOCtldGZmd2lm?= =?utf-8?B?dzEzZWViQzE0Q0Vjb0VkSlhKdiswZjZZZFFNWkg3ZWNENXF4L3BnVXZ4V3pM?= =?utf-8?B?bU13TU9nNGRJMUgyZ3VHTGg5YmdhdEJuMm1Oa2txM1BkdkMxeHNxTXE0eGtU?= =?utf-8?B?WlNCVHNrZWFOUzZTa1ViaXNvVE5KQmRpVFppdTROOTJibUFvWSt0dHBENUVU?= =?utf-8?B?MTJ5UDA2bC9JcFhlM3ZISXhKbVUvTjJ1Y1VmK3VKZFVta2x2dz09?= X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB2053;6:m73dllZZnxLIVEM9oSh+O9VdwYvG8uVG3MFEPrMDFc0tKq1zddbM02EtTuoi5iOcqDDqPlX90sPYU5OyOJakc3VfodIQzssdgSPFh+7YgtwaYSQVx4lgMw5tZWvoicvRHLp2jEh9G9tL+moFVaRFFB7K4LfPySjWmd6BevZPE56DwGPHQIQGnGr9z57MQ+n7e4jGK+fDD4iMhcuOI1CsCBOIXJwOIPFhpm4B+78GP8BZKaaHbPz+t6FhxmWVYsLKPQmxYZXDJCjVrwln7jZ/KjfmEu66gPKpLMqlpHJu7Cud/xjEFiGGQpdac0WEEtBI/gR2MMpZsNQMOtnDQ+r3unboXmtYazDXOIu6vE2S3VQdFqYNVQ1DJLSHVD6HRvch;5:8BBwIpeWUeIkGT3bKBVIJLHiPDtCUohHrBcRhpMqVVx3ALK7HPd7YZFhqTUZGezKw3zTQsQ0WgPzNQcopOSPEBMJj+ezYwQvWOjvIWPxj4ETiIjifTWXv8Mq3zmIYZQOROzVZ+3W2HFCNuWSt8MNbA==;24:IXn1C4quipg6YgsIVtXtyJ14twSjoKO33gVUiJAjzieLjTUdDGsVMiQdyosJZW46nTrB2CGPQ8zRxq7vh+BF9nRS92FPhSm6JN5Rpv+IpVA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB2053;7:VX4tdArmlLJFIlV9LdRui6xipOD5ya83NfCF3ZKaC78ahA77CTjAtqRiVubIfxFySLcXLTwO7YIUkhgo97bsj8vJ9RInkHKv6PA0Ixca9occlfDFj9w9wzhfbchNOosjEzAJfrAXuYnuCcFTbizyM127EQk0EvgfytQ89HqB1i1sZTpnJOxbAqob/15rnRBL4tzYDaEIvRh+SZRWC6YPx6+Oe/cK0hnhuM6obGwNGLhGtRwKQZW31ATVBlXoWLntTjdmbQQigLKCz9ejc2ttgBJFsNP46TF9iFhy1/KhrX5PfpCph222ujk7KH9SpV8NVgNdYQxdlL+3maZamQ94B93zmXAeszp3dohseejWJ6M=;20:kyRPTDkmkqdyD/M+5L3CjhnzQgUNVdk5qQ+Hgq1LIBvo4lYjtToZ23FU7dlDvlph9MCF0xCQH2H03BeSnZMeNAD00CNk58Ol/mZR+iGpZy4VUtCTfwHISOcnY016OQ9kPtIk1zu6vuE/sXcdNe7n5sI+6Bdbs1EIwFmxOr9wtGU= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Nov 2016 08:25:24.0390 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0801MB2053 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 11/23/2016 01:54 AM, Arnd Bergmann wrote: > In the upcoming gcc-7 release, the -fsanitize=kernel-address option > implies -fsanitize-address-use-after-scope, which relies on the > definition of two global functions, causing many link errors if they > are not defined, e.g: > > arch/x86/built-in.o: In function `x86_pmu_handle_irq': > (.text+0x88e6): undefined reference to `__asan_unpoison_stack_memory' > arch/x86/built-in.o: In function `x86_pmu_handle_irq': > (.text+0x8ad7): undefined reference to `__asan_poison_stack_memory' > kernel/built-in.o: In function `perf_tp_event': > (.text+0x225472): undefined reference to `__asan_unpoison_stack_memory' > kernel/built-in.o: In function `perf_tp_event': > (.text+0x22583a): undefined reference to `__asan_unpoison_stack_memory' > kernel/built-in.o: In function `perf_tp_event': > (.text+0x2258ae): undefined reference to `__asan_poison_stack_memory' > kernel/built-in.o: In function `perf_event_aux_event': > > I think we really want to define those two functions so we can make > use of a helpful feature, but as I have no idea what they are supposed > to do, I'd suggest to turn the option off on existing kernels to allow > building with gcc-7 and kasan. > > For some reason, the problem showed up in only a few randconfig builds, > but it is easy to reproduce using an x86-64 tinyconfig build with > CONFIG_KASAN=y. > > If we decide to take this approach, we probably want to do the same > change on all stable kernels that support KASAN, i.e. v4.0 or higher. > We have implementation for this feature: "[PATCH] kasan: support use-after-scope detection" - http://lkml.kernel.org/r/<1479226045-145148-1-git-send-email-dvyukov@google.com> and given how simple it is I'd suggest to just backport implementation. BTW, we also need "[PATCH] kasan: update kasan_global for gcc 7" - http://lkml.kernel.org/r/<1479219743-28682-1-git-send-email-dvyukov@google.com> in v4.0+ stable. > Link: https://gcc.gnu.org/viewcvs/gcc?limit_changes=0&view=revision&revision=241896 > Cc: Martin Liška > Cc: Andrey Ryabinin > Cc: stable@vger.kernel.org > Signed-off-by: Arnd Bergmann > --- > scripts/Makefile.kasan | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/scripts/Makefile.kasan b/scripts/Makefile.kasan > index 37323b0df374..0e68fef09f76 100644 > --- a/scripts/Makefile.kasan > +++ b/scripts/Makefile.kasan > @@ -29,3 +29,5 @@ else > endif > endif > endif > + > +CFLAGS_KASAN += $(call cc-option, -fno-sanitize-address-use-after-scope) >