On Tuesday 09 May 2006 09:00, Chris Wright wrote:
> +#define sizeof_vcpu_shift 6
This should be generated in asm-offsets.c
> +
> +#ifdef CONFIG_SMP
> +#define GET_VCPU_INFO movl TI_cpu(%ebp),%esi
> ; \
> + shl $sizeof_vcpu_shift,%esi ; \
> + addl HYPERVISOR_shared_info,%esi
I think you need some comments on the register usage in the macros.
Otherwise people hacking on it later will go crazy.
> restore_all:
> +#ifndef CONFIG_XEN
> movl EFLAGS(%esp), %eax # mix EFLAGS, SS and CS
> # Warning: OLDSS(%esp) contains the wrong/random values if we
> # are returning to the kernel.
> @@ -258,12 +289,32 @@ restore_all:
> cmpl $((4 << 8) | 3), %eax
> je ldt_ss # returning to user-space with LDT SS
> restore_nocheck:
> +#else
Needs comment
> +restore_nocheck:
> + movl EFLAGS(%esp), %eax # mix EFLAGS and CS
> + movb CS(%esp), %al
> + andl $(VM_MASK | 3), %eax
> + cmpl $3, %eax
> + jne hypervisor_iret
> + ENABLE_INTERRUPTS
>
-Andi
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|