Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757534AbbGUAsI (ORCPT ); Mon, 20 Jul 2015 20:48:08 -0400 Received: from e31.co.us.ibm.com ([32.97.110.149]:42700 "EHLO e31.co.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757282AbbGUAsG (ORCPT ); Mon, 20 Jul 2015 20:48:06 -0400 X-Helo: d03dlp01.boulder.ibm.com X-MailFrom: paulmck@linux.vnet.ibm.com X-RcptTo: linux-kernel@vger.kernel.org Date: Mon, 20 Jul 2015 17:48:03 -0700 From: "Paul E. McKenney" To: Marcin =?utf-8?Q?=C5=9Alusarz?= Cc: David Rientjes , Tejun Heo , LKML , linux-mm@kvack.org Subject: Re: cpu_hotplug vs oom_notify_list: possible circular locking dependency detected Message-ID: <20150721004803.GO3717@linux.vnet.ibm.com> Reply-To: paulmck@linux.vnet.ibm.com References: <20150712105634.GA11708@marcin-Inspiron-7720> <20150714232943.GW3717@linux.vnet.ibm.com> <20150715222612.GP3717@linux.vnet.ibm.com> <20150719095818.GA7200@marcin-Inspiron-7720> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20150719095818.GA7200@marcin-Inspiron-7720> User-Agent: Mutt/1.5.21 (2010-09-15) X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 15072100-8236-0000-0000-00000D57005B Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2287 Lines: 51 On Sun, Jul 19, 2015 at 11:58:18AM +0200, Marcin Ślusarz wrote: > On Thu, Jul 16, 2015 at 02:01:56PM -0700, David Rientjes wrote: > > On Wed, 15 Jul 2015, Paul E. McKenney wrote: > > > > > On Tue, Jul 14, 2015 at 04:48:24PM -0700, David Rientjes wrote: > > > > On Tue, 14 Jul 2015, Paul E. McKenney wrote: > > > > > > > > > commit a1992f2f3b8e174d740a8f764d0d51344bed2eed > > > > > Author: Paul E. McKenney > > > > > Date: Tue Jul 14 16:24:14 2015 -0700 > > > > > > > > > > rcu: Don't disable CPU hotplug during OOM notifiers > > > > > > > > > > RCU's rcu_oom_notify() disables CPU hotplug in order to stabilize the > > > > > list of online CPUs, which it traverses. However, this is completely > > > > > pointless because smp_call_function_single() will quietly fail if invoked > > > > > on an offline CPU. Because the count of requests is incremented in the > > > > > rcu_oom_notify_cpu() function that is remotely invoked, everything works > > > > > nicely even in the face of concurrent CPU-hotplug operations. > > > > > > > > > > Furthermore, in recent kernels, invoking get_online_cpus() from an OOM > > > > > notifier can result in deadlock. This commit therefore removes the > > > > > call to get_online_cpus() and put_online_cpus() from rcu_oom_notify(). > > > > > > > > > > Reported-by: Marcin Ślusarz > > > > > Reported-by: David Rientjes > > > > > Signed-off-by: Paul E. McKenney > > > > > > > > Acked-by: David Rientjes > > > > > > Thank you! > > > > > > Any news on whether or not it solves the problem? > > > > > > > Marcin, is your lockdep violation reproducible? If so, does this patch > > fix it? > > I finally found enough time today to test it. I can reproduce it without > the above patch and can't with. So: > Tested-by: Marcin Ślusarz Thank you, applied! Thanx, Paul -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/