search for: xen_iret_start_crit

Displaying 7 results from an estimated 7 matches for "xen_iret_start_crit".

2007 Jun 06
0
[PATCH UPDATE] xen: use iret directly where possible
...ee if we got the event in the critical + region in xen_iret_direct, after we've reenabled + events and checked for pending events. This simulates + iret instruction's behaviour where it delivers a + pending interrupt when enabling interrupts. */ + movl PT_EIP(%esp),%eax + cmpl $xen_iret_start_crit,%eax + jb 1f + cmpl $xen_iret_end_crit,%eax + jae 1f + + call xen_iret_crit_fixup + +1: mov %esp, %eax call xen_evtchn_do_upcall jmp ret_from_intr CFI_ENDPROC =================================================================== --- a/arch/i386/xen/enlighten.c +++ b/arch/i386/xen/enlighten....
2007 Jun 06
0
[PATCH UPDATE] xen: use iret directly where possible
...ee if we got the event in the critical + region in xen_iret_direct, after we've reenabled + events and checked for pending events. This simulates + iret instruction's behaviour where it delivers a + pending interrupt when enabling interrupts. */ + movl PT_EIP(%esp),%eax + cmpl $xen_iret_start_crit,%eax + jb 1f + cmpl $xen_iret_end_crit,%eax + jae 1f + + call xen_iret_crit_fixup + +1: mov %esp, %eax call xen_evtchn_do_upcall jmp ret_from_intr CFI_ENDPROC =================================================================== --- a/arch/i386/xen/enlighten.c +++ b/arch/i386/xen/enlighten....
2007 Jun 04
1
[PATCH] xen: use iret directly where possible
...ee if we got the event in the critical + region in xen_iret_direct, after we've reenabled + events and checked for pending events. This simulates + iret instruction's behaviour where it delivers a + pending interrupt when enabling interrupts. */ + movl PT_EIP(%esp),%eax + cmpl $xen_iret_start_crit,%eax + jb 1f + cmpl $xen_iret_end_crit,%eax + jae 1f + + call xen_iret_crit_fixup + +1: mov %esp, %eax call xen_evtchn_do_upcall jmp ret_from_intr CFI_ENDPROC =================================================================== --- a/arch/i386/xen/enlighten.c +++ b/arch/i386/xen/enlighten....
2007 Jun 04
1
[PATCH] xen: use iret directly where possible
...ee if we got the event in the critical + region in xen_iret_direct, after we've reenabled + events and checked for pending events. This simulates + iret instruction's behaviour where it delivers a + pending interrupt when enabling interrupts. */ + movl PT_EIP(%esp),%eax + cmpl $xen_iret_start_crit,%eax + jb 1f + cmpl $xen_iret_end_crit,%eax + jae 1f + + call xen_iret_crit_fixup + +1: mov %esp, %eax call xen_evtchn_do_upcall jmp ret_from_intr CFI_ENDPROC =================================================================== --- a/arch/i386/xen/enlighten.c +++ b/arch/i386/xen/enlighten....
2007 Jun 04
1
[PATCH] xen: use iret directly where possible
...ee if we got the event in the critical + region in xen_iret_direct, after we've reenabled + events and checked for pending events. This simulates + iret instruction's behaviour where it delivers a + pending interrupt when enabling interrupts. */ + movl PT_EIP(%esp),%eax + cmpl $xen_iret_start_crit,%eax + jb 1f + cmpl $xen_iret_end_crit,%eax + jae 1f + + call xen_iret_crit_fixup + +1: mov %esp, %eax call xen_evtchn_do_upcall jmp ret_from_intr CFI_ENDPROC =================================================================== --- a/arch/i386/xen/enlighten.c +++ b/arch/i386/xen/enlighten....
2013 Feb 14
2
[PATCH] x86/xen: don't assume %ds is usable in xen_iret for 32-bit PVOPS.
...> /* check IF state we're restoring */ > @@ -106,11 +106,11 @@ ENTRY(xen_iret) > * resuming the code, so we don't have to be worried about > * being preempted to another CPU. > */ > - setz XEN_vcpu_info_mask(%eax) > + setz %ss:XEN_vcpu_info_mask(%eax) > xen_iret_start_crit: > > /* check for unmasked and pending */ > - cmpw $0x0001, XEN_vcpu_info_pending(%eax) > + cmpw $0x0001, %ss:XEN_vcpu_info_pending(%eax) > > /* > * If there's something pending, mask events again so we can > @@ -118,7 +118,7 @@ xen_iret_start_crit: > *...
2013 Feb 14
2
[PATCH] x86/xen: don't assume %ds is usable in xen_iret for 32-bit PVOPS.
...> /* check IF state we're restoring */ > @@ -106,11 +106,11 @@ ENTRY(xen_iret) > * resuming the code, so we don't have to be worried about > * being preempted to another CPU. > */ > - setz XEN_vcpu_info_mask(%eax) > + setz %ss:XEN_vcpu_info_mask(%eax) > xen_iret_start_crit: > > /* check for unmasked and pending */ > - cmpw $0x0001, XEN_vcpu_info_pending(%eax) > + cmpw $0x0001, %ss:XEN_vcpu_info_pending(%eax) > > /* > * If there's something pending, mask events again so we can > @@ -118,7 +118,7 @@ xen_iret_start_crit: > *...