From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932850AbbCDQMs (ORCPT ); Wed, 4 Mar 2015 11:12:48 -0500 Received: from userp1040.oracle.com ([156.151.31.81]:28569 "EHLO userp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932325AbbCDQMr (ORCPT ); Wed, 4 Mar 2015 11:12:47 -0500 Message-ID: <54F72E67.1000206@oracle.com> Date: Wed, 04 Mar 2015 11:10:15 -0500 From: Boris Ostrovsky User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: David Vrabel , paulmck@linux.vnet.ibm.com CC: linux-kernel@vger.kernel.org, mingo@kernel.org, laijs@cn.fujitsu.com, dipankar@in.ibm.com, akpm@linux-foundation.org, mathieu.desnoyers@efficios.com, josh@joshtriplett.org, tglx@linutronix.de, peterz@infradead.org, rostedt@goodmis.org, dhowells@redhat.com, edumazet@google.com, dvhart@linux.intel.com, fweisbec@gmail.com, oleg@redhat.com, bobby.prani@gmail.com, x86@kernel.org, Konrad Rzeszutek Wilk , xen-devel@lists.xenproject.org Subject: Re: [PATCH tip/core/rcu 02/20] x86: Use common outgoing-CPU-notification code References: <20150303174144.GA13139@linux.vnet.ibm.com> <1425404595-17816-1-git-send-email-paulmck@linux.vnet.ibm.com> <1425404595-17816-2-git-send-email-paulmck@linux.vnet.ibm.com> <54F608C4.40405@oracle.com> <20150303194223.GR15405@linux.vnet.ibm.com> <54F615D3.2040802@oracle.com> <20150303212647.GZ15405@linux.vnet.ibm.com> <54F6307A.8040003@oracle.com> <20150303223151.GC15405@linux.vnet.ibm.com> <20150304144336.GA8225@linux.vnet.ibm.com> <54F71CCF.9050509@oracle.com> <54F72891.5070805@citrix.com> In-Reply-To: <54F72891.5070805@citrix.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Source-IP: acsinet22.oracle.com [141.146.126.238] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 03/04/2015 10:45 AM, David Vrabel wrote: > On 04/03/15 14:55, Boris Ostrovsky wrote: >> In the meantime, it turned out that HVM guests are broken by this patch >> (with our without changes that we've been discussing), because HVM CPUs >> die with >> >> static void xen_hvm_cpu_die(unsigned int cpu) >> { >> xen_cpu_die(cpu); >> native_cpu_die(cpu); >> } >> >> Which means that cpu_wait_death() is called twice, and second call moves >> the CPU to CPU_BROKEN. >> >> The simple solution is to stop calling native_cpu_die() above but I'd >> like to use common code in native_cpu_die(). I'll see if I can carve it >> out without too much damage to x86. > If not really been following this thread but... > > Would it be preferable to refactor xen_cpu_die() instead to factor out > its the cpu_wait_death() call? That's essentially what I was going to do. Except that native_cpu_die() returns void so I'll need some common non-void code that lives in x86. And then we can drop xen_hvm_cpu_die() and use xen_cpu_die() for all guests. -boris