diff --git a/drivers/xen/events.c b/drivers/xen/events.c index a10c66dc9dda294003ed2ed36735a7b18d12dddf..65f8637d13cf1fa555825824d71c5a4c30e39828 100644 --- a/drivers/xen/events.c +++ b/drivers/xen/events.c @@ -1109,7 +1109,7 @@ static void __xen_evtchn_do_upcall(void) vcpu_info->evtchn_upcall_pending = 0; - if (__get_cpu_var(xed_nesting_count)++) + if (__this_cpu_inc_return(xed_nesting_count) - 1) goto out; #ifndef CONFIG_X86 /* No need for a barrier -- XCHG is a barrier on x86. */