Bug#544145: [Xen-devel] Crash with paravirt-ops 126.96.36.199 kernel
On Mon, 2009-11-23 at 17:13 +0000, Keir Fraser wrote:
> On 23/11/2009 16:44, "Ian Campbell" <Ian.Campbell@citrix.com> wrote:
> >> But this is not just the return-to-user-space path you're changing, but
> >> also the hypercall one. You certainly don't want an iret in that case.
> > Don't the hypercalls already always go via iret?
> > - testw $TRAP_syscall,4(%rsp)
> > - jz iret_exit_to_guest
> > IOW if TRAP_syscall is not set (i.e. this is a hypercall not a syscall)
> > then exit via iret.
> I think not -- here TRAP_syscall means 'entered Xen via SYSCALL
> instruction', not 'entered to do a syscall'. TRAP_syscall should be set
> regardless of whether the SYSCALL instruction was executed by guest userland
> or guest kernel.
Oh yes, I was confused into thinking it was the same as VGCF_in_syscall
for some reason.
> -- Keir