ia64/xen-unstable

changeset 3387:d741249ada78

bitkeeper revision 1.1159.216.1 (41ddad0e-Lfw2xcLDHNh31b3hdh-AA)

entry.S:
Additional fix to critical section fixup code.
author cl349@arcadians.cl.cam.ac.uk
date Thu Jan 06 21:26:38 2005 +0000 (2005-01-06)
parents 3b51a853296f
children f5275225c5cb
files linux-2.6.10-xen-sparse/arch/xen/i386/kernel/entry.S
line diff
     1.1 --- a/linux-2.6.10-xen-sparse/arch/xen/i386/kernel/entry.S	Thu Jan 06 19:41:15 2005 +0000
     1.2 +++ b/linux-2.6.10-xen-sparse/arch/xen/i386/kernel/entry.S	Thu Jan 06 21:26:38 2005 +0000
     1.3 @@ -93,8 +93,9 @@ VM_MASK		= 0x00020000
     1.4  #define XEN_UNLOCK_VCPU_INFO_SMP(reg) preempt_enable(%ebp)
     1.5  #define XEN_UNLOCK_VCPU_INFO_SMP_fixup .byte 0xff,0xff,0xff
     1.6  #define Ux00 0xff
     1.7 +#define XEN_LOCKED_BLOCK_EVENTS(reg)	movb $1,evtchn_upcall_mask(reg)
     1.8  #define XEN_BLOCK_EVENTS(reg)	XEN_LOCK_VCPU_INFO_SMP(reg)		; \
     1.9 -				movb $1,evtchn_upcall_mask(reg)		; \
    1.10 +				XEN_LOCKED_BLOCK_EVENTS(reg)		; \
    1.11      				XEN_UNLOCK_VCPU_INFO_SMP(reg)
    1.12  #define XEN_UNBLOCK_EVENTS(reg)	XEN_LOCK_VCPU_INFO_SMP(reg)		; \
    1.13  				movb $0,evtchn_upcall_mask(reg)		; \
    1.14 @@ -110,7 +111,8 @@ VM_MASK		= 0x00020000
    1.15  #define XEN_UNLOCK_VCPU_INFO_SMP(reg)
    1.16  #define XEN_UNLOCK_VCPU_INFO_SMP_fixup
    1.17  #define Ux00 0x00
    1.18 -#define XEN_BLOCK_EVENTS(reg)	movb $1,evtchn_upcall_mask(reg)
    1.19 +#define XEN_LOCKED_BLOCK_EVENTS(reg)	movb $1,evtchn_upcall_mask(reg)
    1.20 +#define XEN_BLOCK_EVENTS(reg)	XEN_LOCKED_BLOCK_EVENTS(reg)
    1.21  #define XEN_UNBLOCK_EVENTS(reg)	movb $0,evtchn_upcall_mask(reg)
    1.22  #define XEN_SAVE_UPCALL_MASK(reg,tmp,off) \
    1.23  	movb evtchn_upcall_mask(reg), tmp; \
    1.24 @@ -510,7 +512,7 @@ scrit:	/**** START OF CRITICAL REGION **
    1.25  	jnz  14f			# process more events if necessary...
    1.26  	XEN_UNLOCK_VCPU_INFO_SMP(%esi)
    1.27  	RESTORE_ALL
    1.28 -14:	XEN_BLOCK_EVENTS(%esi)
    1.29 +14:	XEN_LOCKED_BLOCK_EVENTS(%esi)
    1.30  	XEN_UNLOCK_VCPU_INFO_SMP(%esi)
    1.31  	jmp  11b
    1.32  ecrit:  /**** END OF CRITICAL REGION ****/