On 23/11/2009 16:44, "Ian Campbell" <[email protected]> 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. -- Keir -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

