From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: "Srivatsa S. Bhat" <srivatsa.bhat@linux.vnet.ibm.com>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Arjan van de Ven <arjan@infradead.org>,
"rusty@rustcorp.com.au" <rusty@rustcorp.com.au>,
"Rafael J. Wysocki" <rjw@sisk.pl>,
Srivatsa Vaddagiri <vatsa@linux.vnet.ibm.com>,
"akpm@linux-foundation.org" <akpm@linux-foundation.org>,
Paul Gortmaker <paul.gortmaker@windriver.com>,
Milton Miller <miltonm@bga.com>, "mingo@elte.hu" <mingo@elte.hu>,
Tejun Heo <tj@kernel.org>,
KOSAKI Motohiro <kosaki.motohiro@gmail.com>,
linux-kernel <linux-kernel@vger.kernel.org>,
Linux PM mailing list <linux-pm@vger.kernel.org>
Subject: Re: CPU Hotplug rework
Date: Tue, 10 Apr 2012 17:28:36 -0700 [thread overview]
Message-ID: <20120411002836.GM2428@linux.vnet.ibm.com> (raw)
In-Reply-To: <1334102999.23924.232.camel@gandalf.stny.rr.com>
On Tue, Apr 10, 2012 at 08:09:59PM -0400, Steven Rostedt wrote:
> On Sat, 2012-04-07 at 01:22 +0530, Srivatsa S. Bhat wrote:
>
> > Wrapping only do_setup() within get/put_online_cpus() wouldn't serve our
> > purpose, since the race with CPU Hotplug would still exist, just like
> > before. So, let's consider what happens when we wrap both the functions
> > within get/put_online_cpus():
> >
> > get_online_cpus();
> > register_cpu_notifier(nb, mask);
> > do_setup(mask);
> > put_online_cpus();
> >
> > Unfortunately this leads to an ABBA deadlock (see below).
> >
>
> Just to throw out the stupid silly approach.
>
> What about creating a "__register_cpu_notifier()" that just does:
>
> int __ref __register_cpu_notifier(struct notifier_block *nb)
> {
> return raw_notifier_chain_register(&cpu_chain, nb);
> }
>
> Also making cpu_maps_update_begin/done() global (and probably rename
> them).
>
> and then in the above code do:
>
> cpu_maps_update_begin();
> __register_cpu_notifier(nb);
> do_setup();
> cpu_maps_update_done();
>
>
> Just saying,
That does have some attractive properties, now that you mention it. ;-)
Thanx, Paul
next prev parent reply other threads:[~2012-04-11 0:28 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-19 14:44 CPU Hotplug rework Srivatsa S. Bhat
2012-03-19 14:48 ` Srivatsa S. Bhat
2012-03-20 11:28 ` Peter Zijlstra
2012-04-05 17:39 ` Paul E. McKenney
2012-04-05 17:55 ` Paul E. McKenney
2012-04-05 23:06 ` Paul E. McKenney
2012-04-06 20:15 ` Srivatsa S. Bhat
2012-04-09 16:46 ` Paul E. McKenney
2012-04-10 7:56 ` Nikunj A Dadhania
2012-04-06 19:52 ` Srivatsa S. Bhat
2012-04-09 17:13 ` Paul E. McKenney
2012-04-10 13:41 ` Srivatsa S. Bhat
2012-04-10 15:46 ` Paul E. McKenney
2012-04-10 17:26 ` Srivatsa S. Bhat
2012-04-11 0:09 ` Steven Rostedt
2012-04-11 0:28 ` Paul E. McKenney [this message]
2012-04-11 0:37 ` Steven Rostedt
2012-04-11 1:00 ` Paul E. McKenney
2012-04-11 6:02 ` Srivatsa S. Bhat
2012-04-11 12:28 ` Paul E. McKenney
2012-03-19 23:42 ` Rusty Russell
2012-03-20 10:42 ` Peter Zijlstra
2012-03-20 23:00 ` Rusty Russell
2012-03-21 9:01 ` Peter Zijlstra
2012-03-22 4:25 ` Rusty Russell
2012-03-22 22:49 ` Paul E. McKenney
2012-03-23 23:27 ` Rusty Russell
2012-03-24 0:23 ` Paul E. McKenney
2012-03-26 0:41 ` Rusty Russell
2012-03-26 8:02 ` Peter Zijlstra
2012-03-26 13:09 ` Steven Rostedt
2012-03-26 13:38 ` Peter Zijlstra
2012-03-26 15:22 ` Steven Rostedt
2012-03-26 16:13 ` Peter Zijlstra
2012-03-26 17:05 ` Steven Rostedt
2012-03-26 17:59 ` Peter Zijlstra
2012-03-27 1:32 ` Rusty Russell
2012-03-27 3:05 ` Steven Rostedt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20120411002836.GM2428@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=a.p.zijlstra@chello.nl \
--cc=akpm@linux-foundation.org \
--cc=arjan@infradead.org \
--cc=kosaki.motohiro@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=miltonm@bga.com \
--cc=mingo@elte.hu \
--cc=paul.gortmaker@windriver.com \
--cc=rjw@sisk.pl \
--cc=rostedt@goodmis.org \
--cc=rusty@rustcorp.com.au \
--cc=srivatsa.bhat@linux.vnet.ibm.com \
--cc=tj@kernel.org \
--cc=vatsa@linux.vnet.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.