From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Srivatsa S. Bhat" Subject: Re: [Xen-devel] [PATCH 05/27] xen, cpu hotplug: Don't call cpu_bringup() in xen_play_dead() Date: Tue, 05 Jun 2012 23:18:26 +0530 Message-ID: <4FCE466A.3050202@linux.vnet.ibm.com> References: <20120601090952.31979.24799.stgit@srivatsabhat.in.ibm.com> <20120601091124.31979.91984.stgit@srivatsabhat.in.ibm.com> <4FC8D8E30200007800087D2B@nat28.tlf.novell.com> <4FC8DC19.4000007@linux.vnet.ibm.com> <4FC8FD9C0200007800087DF5@nat28.tlf.novell.com> <4FCA5608.2010404@linux.vnet.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: virtualization-bounces@lists.linux-foundation.org Errors-To: virtualization-bounces@lists.linux-foundation.org To: Thomas Gleixner Cc: linux-arch@vger.kernel.org, Jeremy Fitzhardinge , xen-devel@lists.xensource.com, Russell King , nikunj@linux.vnet.ibm.com, Konrad Rzeszutek Wilk , peterz@infradead.org, linux-kernel@vger.kernel.org, x86@kernel.org, vatsa@linux.vnet.ibm.com, virtualization@lists.linux-foundation.org, rjw@sisk.pl, yong.zhang0@gmail.com, Ingo Molnar , Jan Beulich , "H. Peter Anvin" , Keir Fraser , akpm@linux-foundation.org, paulmck@linux.vnet.ibm.com, mingo@kernel.org List-Id: virtualization@lists.linuxfoundation.org On 06/05/2012 11:10 PM, Thomas Gleixner wrote: > On Sat, 2 Jun 2012, Srivatsa S. Bhat wrote: >> Ok.. So, I would love to hear a confirmation about whether this patch (which >> removes cpu_bringup() in xen_play_dead()) will break things or it is good as is. >> >> If its not correct, then we can probably make __cpu_post_online() return an int, >> with the meaning: >> >> 0 => success, go ahead and call cpu_idle() >> non-zero => stop here, thanks for your services so far.. now leave the rest to me. >> >> So all other archs will return 0, Xen will return non-zero, and it will handle >> when to call cpu_idle() and when not to do so. >> >> Might sound a bit ugly, but I don't see much other option. Suggestions are >> appreciated! > > Yes, it's butt ugly. > > You are tripping over the main misconception of the current hotplug > code: It's asymetric. > > So people added warts and workarounds like the xen one. What you are > proposing is another wart and workaround. > > The real way to avoid it, is to have the symetric state machine in > place first and then convert everything to that instead of introducing > an intermediate state which resembles the existing state. > > One of the main things we need to do to make it symetric is to kill > the play_dead() thing in the idle loop and make idle a function which > returns on cpu_should_die(). > > Give me a day or two and I get you a working version of that. (Up is > functional, just down refuses to play along) > Oh great! So, then I'll wait for your patches and then adapt this patchset to your model then. Let me know if I can help out with something.. Regards, Srivatsa S. Bhat