From mboxrd@z Thu Jan 1 00:00:00 1970 From: Keir Fraser Subject: Re: [PATCH v2] xen: x86_32: do not enable iterrupts when returning from exception in interrupt context Date: Fri, 02 Sep 2011 11:00:48 +0100 Message-ID: References: <4E609FA1.3010503@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <4E609FA1.3010503@redhat.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Igor Mammedov , xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org On 02/09/2011 10:19, "Igor Mammedov" wrote: > BTW, while debugging this issue, I've tried to print saved_upcall_mask > inside xen when handling page fault from guest. And it value is always > 0. Looking at asm code for example in xen/arch/x86/x86_32/entry.S:382 > > movzwl TRAPBOUNCE_cs(%edx),%eax > ^^^^^ upper 16-bit is 0 set in propagate_page_fault > by "tb->cs = ti->cs;" > > /* Null selectors (0-3) are not allowed. */ > testl $~3,%eax > jz domain_crash_synchronous > movl %eax,UREGS_cs+4(%esp) > ^^^^^^^^^^^^^^^^ and here is the only place we set > saved_upcall_mask field in current cpu_user_regs > > It looks like "saved_upcall_mask" in cpu_user_regs is not really used > any more for what it means and it's presence in struct is just confusing > and misleading. > > So why not delete it and extend _pad1 to 4 bytes? It's part of the guest ABI. -- Keir > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel