ia64/xen-unstable

changeset 9670:4c8311699685

Make event_pending() architecture-specific.
PowerPC needs this because the domain can directly modify the hardware's
"interrupts enabled" bit, and we don't want to patch Linux to replace
all those accesses to use evtchn_upcall_mask instead.

Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
author kaf24@firebug.cl.cam.ac.uk
date Tue Apr 11 10:40:03 2006 +0100 (2006-04-11)
parents c783f340bef8
children 768b0f6696fd
files xen/include/asm-ia64/event.h xen/include/asm-x86/event.h xen/include/xen/event.h
line diff
     1.1 --- a/xen/include/asm-ia64/event.h	Tue Apr 11 09:58:04 2006 +0100
     1.2 +++ b/xen/include/asm-ia64/event.h	Tue Apr 11 10:40:03 2006 +0100
     1.3 @@ -32,4 +32,9 @@ static inline void evtchn_notify(struct 
     1.4  	vcpu_pend_interrupt(v, v->vcpu_info->arch.evtchn_vector);
     1.5  }
     1.6  
     1.7 +/* Note: Bitwise operations result in fast code with no branches. */
     1.8 +#define event_pending(v)                        \
     1.9 +    (!!(v)->vcpu_info->evtchn_upcall_pending &  \
    1.10 +      !(v)->vcpu_info->evtchn_upcall_mask)
    1.11 +
    1.12  #endif
     2.1 --- a/xen/include/asm-x86/event.h	Tue Apr 11 09:58:04 2006 +0100
     2.2 +++ b/xen/include/asm-x86/event.h	Tue Apr 11 10:40:03 2006 +0100
     2.3 @@ -26,4 +26,9 @@ static inline void evtchn_notify(struct 
     2.4          smp_send_event_check_cpu(v->processor);
     2.5  }
     2.6  
     2.7 +/* Note: Bitwise operations result in fast code with no branches. */
     2.8 +#define event_pending(v)                        \
     2.9 +    (!!(v)->vcpu_info->evtchn_upcall_pending &  \
    2.10 +      !(v)->vcpu_info->evtchn_upcall_mask)
    2.11 +
    2.12  #endif
     3.1 --- a/xen/include/xen/event.h	Tue Apr 11 09:58:04 2006 +0100
     3.2 +++ b/xen/include/xen/event.h	Tue Apr 11 10:40:03 2006 +0100
     3.3 @@ -38,11 +38,6 @@ extern void send_guest_global_virq(struc
     3.4   */
     3.5  extern void send_guest_pirq(struct domain *d, int pirq);
     3.6  
     3.7 -/* Note: Bitwise operations result in fast code with no branches. */
     3.8 -#define event_pending(v)                        \
     3.9 -    (!!(v)->vcpu_info->evtchn_upcall_pending &  \
    3.10 -      !(v)->vcpu_info->evtchn_upcall_mask)
    3.11 -
    3.12  #define evtchn_pending(d, p)                    \
    3.13      (test_bit((p), &(d)->shared_info->evtchn_pending[0]))
    3.14