On Thu, Jan 22, 2015 at 12:55:17PM +0000, David Vrabel wrote: > On 22/01/15 03:18, Andy Lutomirski wrote: > >> --- a/drivers/xen/events/events_base.c > >> +++ b/drivers/xen/events/events_base.c > >> @@ -32,6 +32,8 @@ > >> #include <linux/slab.h> > >> #include <linux/irqnr.h> > >> #include <linux/pci.h> > >> +#include <linux/sched.h> > >> +#include <linux/kprobes.h> > >> > >> #ifdef CONFIG_X86 > >> #include <asm/desc.h> > >> @@ -1243,6 +1245,17 @@ void xen_evtchn_do_upcall(struct pt_regs *regs) > >> set_irq_regs(old_regs); > >> } > >> > >> +notrace void xen_end_upcall(struct pt_regs *regs) > >> +{ > >> + if (!xen_is_preemptible_hypercall(regs) || > >> + __this_cpu_read(xed_nesting_count)) > >> + return; > > > > What's xed_nesting_count? > > It used to prevent nested upcalls when a hypercall called from an upcall > triggers another upcall. > > There's no way a such a nested hypercall can be preemptible so the check > for xed_nesting_count an be removed from here. Removed. Luis -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html