From: Zachary Amsden Subject: Re: [RFC PATCH 15/33] move segment checks to subarch Date: Tue, 18 Jul 2006 04:28:01 -0700 Message-ID: <44BCC5C1.5020305@vmware.com> References: <20060718091807.467468000@sous-sol.org> <20060718091952.263186000@sous-sol.org> <1153217344.3038.31.camel@laptopd505.fenrus.org> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1153217344.3038.31.camel@laptopd505.fenrus.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Arjan van de Ven Cc: Andrew Morton , Jeremy Fitzhardinge , xen-devel@lists.xensource.com, Ian Pratt , Rusty Russell , linux-kernel@vger.kernel.org, Andi Kleen , Chris Wright , virtualization@lists.osdl.org, Christian Limpach List-Id: xen-devel@lists.xenproject.org Arjan van de Ven wrote: > On Tue, 2006-07-18 at 00:00 -0700, Chris Wright wrote: > >> plain text document attachment (i386-segments) >> We allow for the fact that the guest kernel may not run in ring 0. >> This requires some abstraction in a few places when setting %cs or >> checking privilege level (user vs kernel). >> > > >> - regs.xcs = __KERNEL_CS; >> + regs.xcs = get_kernel_cs(); >> > > Hi, > > wouldn't this patch be simpler if __KERNEL_CS just became the macro that > currently is get_kernel_cs() for the XEN case? then code like this > doesn't need changing at all... > The tradeoff is that then you can't use __KERNEL_CS is assembler code, and it is used in entry.S to detect NMI / debug trap workarounds - which don't actually need to be paravirtualized, as it is easier to hide the nasty cases which cause those side effects. Zach