X-Git-Url: http://ftp.safe.ca/?a=blobdiff_plain;f=arch%2Fx86%2Fxen%2Fmulticalls.h;h=9e565da5d1f730f50d41fca98f4fbb86c69b5f29;hb=8ec6993d9f7d961014af970ded57542961fe9ad9;hp=e786fa7f26158942648624f5af037c8c339efaa7;hpb=6dbde3530850d4d8bfc1b6bd4006d92786a2787f;p=safe%2Fjmp%2Flinux-2.6 diff --git a/arch/x86/xen/multicalls.h b/arch/x86/xen/multicalls.h index e786fa7..9e565da 100644 --- a/arch/x86/xen/multicalls.h +++ b/arch/x86/xen/multicalls.h @@ -19,8 +19,10 @@ DECLARE_PER_CPU(unsigned long, xen_mc_irq_flags); paired with xen_mc_issue() */ static inline void xen_mc_batch(void) { + unsigned long flags; /* need to disable interrupts until this entry is complete */ - local_irq_save(__get_cpu_var(xen_mc_irq_flags)); + local_irq_save(flags); + __get_cpu_var(xen_mc_irq_flags) = flags; } static inline struct multicall_space xen_mc_entry(size_t args)