WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] progress and a problem

To: ron minnich <rminnich@xxxxxxxx>
Subject: Re: [Xen-devel] progress and a problem
From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Date: Fri, 25 Jun 2004 23:56:08 +0100
Cc: xen-devel@xxxxxxxxxxxxxxxxxxxxx
Delivery-date: Fri, 25 Jun 2004 23:58:05 +0100
Envelope-to: steven.hand@xxxxxxxxxxxx
In-reply-to: Your message of "Fri, 25 Jun 2004 16:08:28 MDT." <Pine.LNX.4.44.0406251604470.24857-100000@xxxxxxxxxxxxxxxxx>
List-archive: <http://sourceforge.net/mailarchive/forum.php?forum=xen-devel>
List-help: <mailto:xen-devel-request@lists.sourceforge.net?subject=help>
List-id: List for Xen developers <xen-devel.lists.sourceforge.net>
List-post: <mailto:xen-devel@lists.sourceforge.net>
List-subscribe: <https://lists.sourceforge.net/lists/listinfo/xen-devel>, <mailto:xen-devel-request@lists.sourceforge.net?subject=subscribe>
List-unsubscribe: <https://lists.sourceforge.net/lists/listinfo/xen-devel>, <mailto:xen-devel-request@lists.sourceforge.net?subject=unsubscribe>
Sender: xen-devel-admin@xxxxxxxxxxxxxxxxxxxxx
If Xen interrupted a ring-1 activation then the hypervisor_callback
stack frame will be pushed onto the stack that was interrupted.

If Xen interrupted rings 2 or 3 then it uses SS:ESP specified in your
call to HYPERVISOR_stack_switch when creating the hypervisor_callback
stack frame.

The code that creates the callback stack frame and jumps to your
handler is in xen/arch/x86/entry.S

 -- Keir

> 
> I've got xen calling into my hypervisor_callback but i'm seeing a very 
> weird problem. On the first instruction, which is a PUSHL %eax, I take a 
> page fault. The values of %ss and %esp on stack make no sense, and in 
> fact change from run to run of the guest OS. All other values stay the 
> same. PC does look right. 
> 
> If i just put an IRETL as the first instruction of the hypervisor_callback
> all is well -- no problem. Does Xen pass in a read-only stack segment to
> the callback? I don't see similar problems on the Linux side.
> 
> If I get a stack dump, everything EXCEPT ss/esp look fine -- cs, ds, etc. 
> are all right. 
> 
> I have done a HYPERVISOR_stack_switch call, and all other interrupts work 
> save this one.
> 
> what function in Xen calls the hypervisor_callback in the guest?
> 
> ron
> 
> 
> 
> -------------------------------------------------------
> This SF.Net email sponsored by Black Hat Briefings & Training.
> Attend Black Hat Briefings & Training, Las Vegas July 24-29 - 
> digital self defense, top technical experts, no vendor pitches, 
> unmatched networking opportunities. Visit www.blackhat.com
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxxxx
> https://lists.sourceforge.net/lists/listinfo/xen-devel



-------------------------------------------------------
This SF.Net email sponsored by Black Hat Briefings & Training.
Attend Black Hat Briefings & Training, Las Vegas July 24-29 - 
digital self defense, top technical experts, no vendor pitches, 
unmatched networking opportunities. Visit www.blackhat.com
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel