On 22/01/15 18:56, Luis R. Rodriguez wrote: > On Thu, Jan 22, 2015 at 01:10:49PM +0000, Julien Grall wrote: >> Hi Luis, >> >> On 22/01/15 02:17, Luis R. Rodriguez wrote: >>> diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c >>> index b4bca2d..23c526b 100644 >>> --- 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) || >> >> I don't see any definition of xen_is_preemptible_hypercall for ARM32/ARM64. >> >> As this function is called from the generic code, you have at least to >> stub this function for those architectures. > > Will add as: > > diff --git a/arch/arm/include/asm/xen/hypercall.h b/arch/arm/include/asm/xen/hypercall.h > index 712b50e..4fc8395 100644 > --- a/arch/arm/include/asm/xen/hypercall.h > +++ b/arch/arm/include/asm/xen/hypercall.h > @@ -74,4 +74,9 @@ MULTI_mmu_update(struct multicall_entry *mcl, struct mmu_update *req, > BUG(); > } > > +static inline bool xen_is_preemptible_hypercall(struct pt_regs *regs) > +{ > + return false; > +} > + > #endif /* _ASM_ARM_XEN_HYPERCALL_H */ > > This will cover both arm and arm64 as arm64 includes the arm header. I'm fine with this solution. Regards, -- Julien Grall -- 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