From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932122AbbCYGUa (ORCPT ); Wed, 25 Mar 2015 02:20:30 -0400 Received: from gum.cmpxchg.org ([85.214.110.215]:50852 "EHLO gum.cmpxchg.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752465AbbCYGRh (ORCPT ); Wed, 25 Mar 2015 02:17:37 -0400 From: Johannes Weiner To: linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Linus Torvalds , Andrew Morton , Tetsuo Handa , Huang Ying , Andrea Arcangeli , Dave Chinner , Michal Hocko , "Theodore Ts'o" Subject: [patch 04/12] mm: oom_kill: remove unnecessary locking in exit_oom_victim() Date: Wed, 25 Mar 2015 02:17:08 -0400 Message-Id: <1427264236-17249-5-git-send-email-hannes@cmpxchg.org> X-Mailer: git-send-email 2.3.3 In-Reply-To: <1427264236-17249-1-git-send-email-hannes@cmpxchg.org> References: <1427264236-17249-1-git-send-email-hannes@cmpxchg.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Disabling the OOM killer needs to exclude allocators from entering, not existing victims from exiting. Right now the only waiter is suspend code, which achieves quiescence by disabling the OOM killer. But later on we want to add waits that hold the lock instead to stop new victims from showing up. Signed-off-by: Johannes Weiner --- mm/oom_kill.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/mm/oom_kill.c b/mm/oom_kill.c index 4b9547be9170..88aa9ba40fa5 100644 --- a/mm/oom_kill.c +++ b/mm/oom_kill.c @@ -437,14 +437,12 @@ void exit_oom_victim(void) { clear_thread_flag(TIF_MEMDIE); - down_read(&oom_sem); /* * There is no need to signal the lasst oom_victim if there * is nobody who cares. */ if (!atomic_dec_return(&oom_victims) && oom_killer_disabled) wake_up_all(&oom_victims_wait); - up_read(&oom_sem); } /** -- 2.3.3