Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752553AbcDOQO2 (ORCPT ); Fri, 15 Apr 2016 12:14:28 -0400 Received: from mail-am1on0107.outbound.protection.outlook.com ([157.56.112.107]:41628 "EHLO emea01-am1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752489AbcDOQO0 (ORCPT ); Fri, 15 Apr 2016 12:14:26 -0400 Authentication-Results: kvack.org; dkim=none (message not signed) header.d=none;kvack.org; dmarc=none action=none header.from=virtuozzo.com; Subject: Re: [PATCH v2 1/2] mm, kasan: don't call kasan_krealloc() from ksize(). To: Alexander Potapenko , , , , , References: <2126fe9ca8c3a4698c0ad7aae652dce28e261182.1460545373.git.glider@google.com> CC: , , From: Andrey Ryabinin Message-ID: <57110FAF.8070401@virtuozzo.com> Date: Fri, 15 Apr 2016 18:58:39 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.0 MIME-Version: 1.0 In-Reply-To: <2126fe9ca8c3a4698c0ad7aae652dce28e261182.1460545373.git.glider@google.com> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [195.214.232.10] X-ClientProxiedBy: VI1PR07CA0108.eurprd07.prod.outlook.com (10.165.229.162) To AM5PR0801MB1298.eurprd08.prod.outlook.com (10.167.216.149) X-MS-Office365-Filtering-Correlation-Id: 347a5748-950e-4816-76b9-08d36546c44a X-Microsoft-Exchange-Diagnostics: 1;AM5PR0801MB1298;2:wXIn970CaBdLdsrTiOwu9IbqNPeu6R/uw+NvQblEkffl8AHAlqQnHfLVruWXh3m6zSzclnH1nOrrZhN8uoh2EiZjaiquETz//xsb0NskUVAaY0k1s5TYXJBRpdmFX5vgawRmZ+lTVrUJ/D7E7ExhGhJ2RFcY37oc4qlZ9x2efUGwVtn1DsUqBoR9kOPKX4NQ;3:2/FnQKWNvPN7t1xQSJW0MvVfAhFTSQrbkA5eLgXApHJPpAmPbK5ziof3MlReEESS7Le+88sz2vsrn8tnc30upCOlUiM6ien/17BZRdq6dzGLEEXUUm+d1pXbZ3zH4ct4;25:hTP4bwFR4BrPwMQbVEC0GueYk0wgGR5s0HV2qrDPPDa1f98N8Dr0+9iZnGx8vX2CNd+fr0emgevTHVqTFLxN1y88gPF5bA1NUEjCceU43USv8i7QevLLQ/305a7RyLkkVZqvdKsh66xIhDJchsgFftrmKR++kz3NOEP/b6fJRE8g8+mHafjbHjAWLla8eG+Lje7KCNV0A1p/9SXhq+LhF4eBrSGPEtT+bVpvilybfsBds8y41h2R7BnCy+crtT1oBnnr1qMyMX9fMasrj888OaxJEz1xOBMu64Kci52sZw4D7bccMwaEbZhzB8Z0FE8rhPBe600n7BSTjOTi878iog== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:AM5PR0801MB1298; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040130)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6041046)(6043046);SRVR:AM5PR0801MB1298;BCL:0;PCL:0;RULEID:;SRVR:AM5PR0801MB1298; X-Microsoft-Exchange-Diagnostics: 1;AM5PR0801MB1298;4:l5xP0Vn/hJTiCOvJjXM4SvNdIwzllyW8CeNpDWIPmUH6lV2zVllx2goBtpZQVlpYOTEvC/GasajXgHVkAfCFvWbYYbt2SpawkPYOk1jyjq/8T4tX/gvU27qd4Ia3g6LruKkVrArQZdxCo/8u7dZzAseexcNiLGau12MVZQw6/OI2ld7COp2IKVSx5e2tUa+OkpVU/XIBRd/867rmYUNzylHeYbhjqGzOJR/F8yhipzUoWoherSi1RpCbh2ccOGiwZoxNx7p342u7UT3Ce/frijs4Xctk06HKMSj8Ye5FMT6q3AKQsVD0dEZMMswvgG5hA9FAOIFNJ2IMyTnvdNmXVRxcTdO4G6EvHS+6tIGKxVTiuI1KbBdO99LltzCdeMHtVhUnKZSGNXa2jo8lGRS47CYYKuOvYfx76hWqOpP4eJg= X-Forefront-PRVS: 0913EA1D60 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(377454003)(24454002)(5004730100002)(3846002)(65956001)(2201001)(50986999)(4001350100001)(65806001)(586003)(76176999)(33656002)(87266999)(1096002)(86362001)(6116002)(36756003)(92566002)(81166005)(5001770100001)(64126003)(189998001)(47776003)(59896002)(83506001)(66066001)(77096005)(230700001)(19580405001)(54356999)(19580395003)(80316001)(5008740100001)(4326007)(2906002)(99136001)(2950100001)(50466002)(42186005);DIR:OUT;SFP:1102;SCL:1;SRVR:AM5PR0801MB1298;H:[10.30.25.228];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;AM5PR0801MB1298;23:yC5KktKfFITG621urIMsvX6wyvFEUAs/G4f?= =?Windows-1252?Q?Hkxol+XVAV8HnvzFw2YKckIP5YZDPxlkEH7d5r4kxiZ3eZ9RjTzTfE7t?= =?Windows-1252?Q?56V1JRs2lzbxLDDuRLIX7kBBmsZo6UF+318Fosqz84S82vWnb75NDL4j?= =?Windows-1252?Q?0ren37ZWACDH2/uI32XWolzCK308tJq5B+XDLnW+lLupmOIeKmXuE72e?= =?Windows-1252?Q?oiolOYYRLwj+u790W7CNtFHzxtPLmKXtxaA5Hp6bSsL+mr/lrwyAw+te?= =?Windows-1252?Q?1xwee9tZ2N20OTVVSHONSTFswHCD6GvhS09j7+4DF2i2zQaPpBHPxHd5?= =?Windows-1252?Q?TiP6iyuE119rI/4UC22XDfia+v4nZZbfkdsO/a/n9axrds0SKsNrfVJI?= =?Windows-1252?Q?Sr5ZpjoMsVULA00BUg0xDzO0h1sTDnb5llO5aeG15VR1g7pTif2fI2Va?= =?Windows-1252?Q?e7sSG5CQvs9B4iCyc1jXCD7oFCmWf79tLQOzghWwYHYMkPXm3BE5UGXn?= =?Windows-1252?Q?s38sGHLS83RBaVsjWC3gPOfr4d1WewvposHPritY1kgVoiOKwAITE8HG?= =?Windows-1252?Q?JqjdldOD+Un+a9STjpWRHU0e9uKH2pnFSOYufJQvUHBTL66aj/nHa9ri?= =?Windows-1252?Q?tfLZFDmpoY721vZEi8e66stgfVK0Pmf4fWG+6NG9wOd1hvs2oev3noD6?= =?Windows-1252?Q?9OVxLY6HkYWDkrroDVAPe2rvre3hgP8Oy1COQaLL5yrmIWyqaMADaaX+?= =?Windows-1252?Q?pIM9o9uBwjA9fKQmelTw7/HGTirIA+NB9MIaoRHz3/9z/Ypl1ExA2U41?= =?Windows-1252?Q?yAajN8crjacnpU/Wvb/4bz7z7FLyvQiu6KoMv+5TII+AGJL0xivzz/X/?= =?Windows-1252?Q?PNg9iQDMlpbUKKRHIN1gmz3Ut72hbkOf3sWZHZY381VTnL5VFSLajl0s?= =?Windows-1252?Q?NtujzLAOGxgh2vfH8KP9ytg+qF3fYFwxk4AMkWYovlFfkmFit2zpmQgc?= =?Windows-1252?Q?fT5C2i6Yuxqrpcs44cxAVRXLYXyTD8v1PUDqGS3vmNloxLxC7fSQsEWC?= =?Windows-1252?Q?pggvn+pWCmCigQZee2nWsXgxUMxPvyHjyaTQ/ChW0VudoTPT5sBbtus8?= =?Windows-1252?Q?otH2p1SzxtOA9ksIBdfyt7dEr05dGnw+5AT5SLJM/8wLOouO7P+K7FfN?= =?Windows-1252?Q?wSPEbuENPqg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;AM5PR0801MB1298;5:RhfejYt/R4L32G71K4uv1zBmTF/lPbmsa9ZGMvE2C7o6pp37iB+F0k5UafJfFH6wh8mN2tnmVu3gQQKAfUWxW783zjW84rouCCNI0YQWVrgNr/RKYjmDNd/49Iy3xw5Y1tpaHZcON/9+2pInqUo6oA==;24:kehILaDgPZOdQZ2e02jZ7iVLdCUqij4t1eLlJA9kFFOjNv1aF2zblMVxMqasfEjdfVhBxeLKR3k0naRNrl8Yod4NeSPhDMBSx2rPtRiEiaU=;20:YG4PrU/07CX18BIifKAhulISmle2Vi+lga02lMotDzHJFzaAkOHYIYWUeWHSmNQxI2guK/ts/QpEFf6kmNTSJQOVvVcWVJ7nbwpZ45E89AFURnKWK0aBPvDh0BVuc/qN2mQNCoWW22q9jjgint+y8DkyJann9IYLFpqcJyfsW6Y= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2016 15:58:19.5327 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0801MB1298 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1353 Lines: 47 On 04/13/2016 02:20 PM, Alexander Potapenko wrote: > Instead of calling kasan_krealloc(), which replaces the memory allocation > stack ID (if stack depot is used), just unpoison the whole memory chunk. > > Signed-off-by: Alexander Potapenko Acked-by: Andrey Ryabinin > --- > v2: - splitted v1 into two patches > --- > mm/slab.c | 2 +- > mm/slub.c | 5 +++-- > 2 files changed, 4 insertions(+), 3 deletions(-) > > diff --git a/mm/slab.c b/mm/slab.c > index 17e2848..de46319 100644 > --- a/mm/slab.c > +++ b/mm/slab.c > @@ -4324,7 +4324,7 @@ size_t ksize(const void *objp) > /* We assume that ksize callers could use the whole allocated area, > * so we need to unpoison this area. > */ > - kasan_krealloc(objp, size, GFP_NOWAIT); > + kasan_unpoison_shadow(objp, size); > > return size; > } > diff --git a/mm/slub.c b/mm/slub.c > index 4dbb109e..62194e2 100644 > --- a/mm/slub.c > +++ b/mm/slub.c > @@ -3635,8 +3635,9 @@ size_t ksize(const void *object) > { > size_t size = __ksize(object); > /* We assume that ksize callers could use whole allocated area, > - so we need unpoison this area. */ > - kasan_krealloc(object, size, GFP_NOWAIT); > + * so we need to unpoison this area. > + */ > + kasan_unpoison_shadow(object, size); > return size; > } > EXPORT_SYMBOL(ksize); >