From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755198AbcE3OWE (ORCPT ); Mon, 30 May 2016 10:22:04 -0400 Received: from mail-am1on0134.outbound.protection.outlook.com ([157.56.112.134]:48048 "EHLO emea01-am1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1755108AbcE3OWB (ORCPT ); Mon, 30 May 2016 10:22:01 -0400 Authentication-Results: kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=none action=none header.from=virtuozzo.com; Date: Mon, 30 May 2016 16:49:15 +0300 From: Vladimir Davydov To: Michal Hocko CC: , Tetsuo Handa , David Rientjes , Oleg Nesterov , "Andrew Morton" , LKML , Michal Hocko Subject: Re: [PATCH 1/6] proc, oom: drop bogus task_lock and mm check Message-ID: <20160530134915.GD8293@esperanza> References: <1464613556-16708-1-git-send-email-mhocko@kernel.org> <1464613556-16708-2-git-send-email-mhocko@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <1464613556-16708-2-git-send-email-mhocko@kernel.org> X-Originating-IP: [195.214.232.10] X-ClientProxiedBy: AMSPR02CA0012.eurprd02.prod.outlook.com (10.242.225.140) To VI1PR08MB0591.eurprd08.prod.outlook.com (10.163.169.21) X-MS-Office365-Filtering-Correlation-Id: 8e903b02-dbd6-4b80-ba57-08d3889133bf X-Microsoft-Exchange-Diagnostics: 1;VI1PR08MB0591;2:zQ2Et1KBKrfCSNeH1BkOYLkeJGYOpaBLu0fjUUKR37IQo7No0oq/zYMVgZXYr9duJhkhurOFj4Qmj3tDgy7Q8OYVeYmFcd4Jog9Tvf0bDMMSR/lnJEFQvzJnX67h8vLjCPUJMfcW0wAmDAce+mH5pCESvugS4vqorUefLaBAts8EXnXjDvh5OWBzyzUsuNPN;3:CzKcnV07QCjpEsHw3fsP2rizVovI4ewkfgU0IwhGG8yHdbt6R7/XTfz5iePKHjr13ZpemCHspHSjNPMzD8G51D9QHRH/jYv7Iz0OpRrIYNMWPvOGuXcTP2VvTiYzfVpH;25:qfAQA3+sWH5wyML7FhDwcJuGDig1WnWkXSr7wemlfZ/WOObACDRjtApuyE1YeibY82zpTQ00JVeQZ5wGM8uf2Jx7tWeMpV0QZmu/LJqv2MVHLJaz437Eo6AMh4fy1PEoMshEnih8SY61Nzc3RBrToKzGO3GZ2pwpt7zt02jr6XnFcM7IKu3dw/oBiG70Nh8SQPV/aXxdbWzKVFS7RyRTT0V15NIP8v8TkS8ytOCiSDgVGrJcR48UjStlGJ7CZ5hEjfNCdnVK3AVN7VanClbmkpulyPXssXfzavktMJp654mSuA95Ls+AQ0DaHRcB37q+1u8ziLJ+WaaQ1hxhtdAQpgZ5Jg0gKde4iUcGyiBnpY5v/6/JUOXb6GN5/aafOD9RQ1OchiDye9l2Kx54gp1j9KJ4/T2JTH6mMgv7vPmbS9k= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:VI1PR08MB0591; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040130)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6041072)(6043046);SRVR:VI1PR08MB0591;BCL:0;PCL:0;RULEID:;SRVR:VI1PR08MB0591; X-Microsoft-Exchange-Diagnostics: 1;VI1PR08MB0591;4:8LFV/8X/Awk5LqWl8zQS8ykTfJOGxCo5a8MLjD2DfpqrPuwFBNlE4Zsr9rZoLaCy1JCsCHi0m2yLvLHeZUqcQ9NFogM8CKT2I4u3MlFvZBfx+4vafsTN61UWOEmTdPT9zBlGyDiLBkTwvIjjqtkti/4csjSNzuFsNMGHCS7fRgiiJST647qYTrKgzK/ddpIlZsAuPyb5tA9wnaPdAJI+BsnZD5wCBUyby5/zFA5faagittUucTGWDtQ+vUTqhp03b5muk/ihZWZEHJ0odkMMQnavMiu4+iN3auqb/Zq1txP40rqGCD0V2HtmROqTPuPZ91xXY5Uft6WdWz6KSio/P6Zz+42mMdVmNoYFzsN0V42aFpm6HXf+JKf7Ic+2bb6fjgaQv0uR1ni81Zx2UefQ/ITsHYa5Azg9wvhSnofdt3Q= X-Forefront-PRVS: 09583628E0 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(24454002)(76176999)(5004730100002)(66066001)(54356999)(19580405001)(50986999)(4326007)(19580395003)(9686002)(33716001)(2950100001)(86362001)(2906002)(33656002)(77096005)(97756001)(5008740100001)(110136002)(189998001)(23726003)(80792005)(6116002)(3846002)(586003)(42186005)(47776003)(1076002)(50466002)(81166006)(46406003)(8676002)(92566002);DIR:OUT;SFP:1102;SCL:1;SRVR:VI1PR08MB0591;H:esperanza;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;VI1PR08MB0591;23:reYmyXT0BnfVmvVMp7HpvwlShymQI+oUlSWQrQavgh/Vekuq2YDsDzdyXX8UX9Oen3t79gRmqharob/MXgtRtAsthBHGLK0TLPIcQechccJDl8PpyrKzBNN6BIjnFk7B3LHUYbrIAA8JkEMLP1WhJx4B5UCOCJhDBTZ8qOMxlLKb3IWt4QQ27wUtOh47ygo5FXIpnN46NCwBPCZzLzVis1UOMXHUDXoR2NvUojs6GM+bCVriRw9LG5PVrh7UNv1mMdsK/BHAzNtSTg/xHKeBiEKt3Fy19gSIQKla2q4Ub1m7fLAT8sWAQyOkiexaq+vE1i8unuXAVqdSqt1SQEubVFF4jLTqjOGRtLDg3f2qOBeNCYl7I8z9R1uLUqhsfiRtHyU/L8G/b8LK3zDcCCNyCcY+4+DCga5NKUg639zRmz3Mf8vgZ4rl1eMdXuWqyCyGpT0LCsjSYXAEQKTEGj1X5o7Z1VfVh4YdGu4rBjG6C5Di2gRL3TaKcaBvA0S+GlwxQiaIjqoBPQbsd3C3pILOGlT6fpbJZz2Nj4FArHJA+GuqRalbGRnT4hA7Btz5MB2QBpPX27BOwE7idRzJnG0LhfVbsBpbyhnRFWWyNfmwlxcUnsCISwQcAqoqdnZpb7GOk4ovHJc9Iux6c/4d5zP7y1II2F8KTou8V1VCwiWPXVdc4zQ+1TFjAEjjiFMDImG3s4gOjW/T+dvYXW37xLNEjwUkbhIfkhiECvhXmxIgd5O06CBlOVkw4R40KDURWv7Xs31pvxDWtNwqY2JWseTu/oPuS/K36nuXtxC5kFVX9YICZnY2pk80oJcMrCajFMJSrABg1TwIod5/fNmbPgnQonw5E7anOZTDsegfd5VsKF2ard4P3StW9HYxSxj3oPqPXbim0s6miLVkgbWIYrzZrl/aCupAkVsGN/We+Y9zmGPP0Q1BKJzqaR6tEfFCxMe3 X-Microsoft-Exchange-Diagnostics: 1;VI1PR08MB0591;5:QqMPJwt6oXUAO4G2jwUxxsH/ObRlz4xK/oZW79Pd1TIJqSij087ZAnjnHvtio/VMxcVORLfS82H2uDavOfBQNCSSHdjRa0O/Y0+faPqRcKDtwoYn1u+qc6Tzu1pa9foxypVCa8sye0kuAGvB4ASjPA==;24:o8Je+hH5MExuRA15twoD8xrRseJA0UjoP6uDMj1tD9qiKF5ConyamgLmn5JrpSFdmF52ddim9NQYuipzWkAN3CBDj5Hz7WG7h6Mh2Ps6BfU=;7:8vp6IGNgL5UEB5OO49C5l5wW3bthIsknESlo/qZSW7nLS5ZMSHq09j5VhnYnjyZMobbA2lm+onAoqW7MjxeoczhoJJQpX5xEGJWg+FAJa37If27M9w3M3vsapP7l0Btv0OAtTeEC1MHc8euRoMSiIpffMmCq8ChfulcBoba8nQ2QnnN8bgZ4Kg0mmuUJ5Mcl;20:Io07MiHsxkUUlCzTKkOA5Tg+oPn1GcZM0QV/VuIdQ0pSya39l0+/fDk+RjjXAkMzgoTNOP6cOyhe08xlz0Kg/NnGzk49w0ZRal/aGassVf7Pn0XzABWGAOo++izlbEw+jw7K/R8SX2VV3DITWwca/wqoAFjpSxNgCqAJ5vEiD7Q= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 May 2016 13:49:20.2647 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB0591 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, May 30, 2016 at 03:05:51PM +0200, Michal Hocko wrote: > From: Michal Hocko > > both oom_adj_write and oom_score_adj_write are using task_lock, > check for task->mm and fail if it is NULL. This is not needed because > the oom_score_adj is per signal struct so we do not need mm at all. > The code has been introduced by 3d5992d2ac7d ("oom: add per-mm oom > disable count") but we do not do per-mm oom disable since c9f01245b6a7 > ("oom: remove oom_disable_count"). > > The task->mm check is even not correct because the current thread might > have exited but the thread group might be still alive - e.g. thread > group leader would lead that echo $VAL > /proc/pid/oom_score_adj would > always fail with EINVAL while /proc/pid/task/$other_tid/oom_score_adj > would succeed. This is unexpected at best. > > Remove the lock along with the check to fix the unexpected behavior > and also because there is not real need for the lock in the first place. > > Signed-off-by: Michal Hocko Reviewed-by: Vladimir Davydov