[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Resend: Linux 4.11-rc7: kernel BUG at drivers/xen/events/events_base.c:1221
On 04/24/2017 12:10 PM, Sander Eikelenboom wrote: > On 24/04/17 17:49, Boris Ostrovsky wrote: >> On 04/24/2017 10:20 AM, Sander Eikelenboom wrote: >>> Hi Boris, >>> >>> Nope, not that i am aware of. >> If you can keep console while running this, can you add these changes >> and see if we ever unbind the work vector (you can even add dump_stack() >> in __unbind_from_irq() for good measure)? (I added HHH for easy grepping) >> >> Also do 'grep -i work /proc/interrupts' so that we know which IRQ the >> work interrupt is. >> >> -boris > Hmmm i f*cked up and accidently compiled a tree with "for linus 4.12" > pulled in and ran that instead of the vanilla 4.11-rc7 (while not naming > it "xen-next" as i normally do. > So 4.11-rc7 is most probably fine, sorry for that noise. > > Since your patch doesn't apply the smp part is changed. Seems the > problem somewhere lies in there (Vitaly's patches, general x86 stuff > being pulled in to base that on). I can see if i can adapt the patch > to for linus 4.12 and retest, instead of waiting for it to be pulled in > into Linus his tree in the next merge window. This is trivially reproduced on 4.12 branch with diff --git a/drivers/xen/sys-hypervisor.c b/drivers/xen/sys-hypervisor.c index 84106f9..065728f 100644 --- a/drivers/xen/sys-hypervisor.c +++ b/drivers/xen/sys-hypervisor.c @@ -148,7 +148,7 @@ static int __init xen_sysfs_uuid_init(void) } /* xen compilation attributes */ - +void arch_irq_work_raise(void ); static ssize_t compiler_show(struct hyp_sysfs_attr *attr, char *buffer) { int ret = -ENOMEM; @@ -161,7 +161,7 @@ static ssize_t compiler_show(struct hyp_sysfs_attr *attr, char *buffer) ret = sprintf(buffer, "%s\n", info->compiler); kfree(info); } - + arch_irq_work_raise(); return ret; } and then (if you manage to boot): [root@vm-0238 ~]# grep proc /proc/cpuinfo processor : 0 [root@vm-0238 ~]# [root@vm-0238 ~]# cat /sys/hypervisor/compilation/compiler [ 502.160472] ------------[ cut here ]------------ [ 502.160491] kernel BUG at drivers/xen/events/events_base.c:1221! and the fix is diff --git a/arch/x86/xen/smp_pv.c b/arch/x86/xen/smp_pv.c index c0e3b96..aae3253 100644 --- a/arch/x86/xen/smp_pv.c +++ b/arch/x86/xen/smp_pv.c @@ -249,7 +249,7 @@ static void __init xen_pv_smp_prepare_cpus(unsigned int max_cpus) xen_pmu_init(0); - if (xen_smp_intr_init(0)) + if (xen_smp_intr_init(0) || xen_smp_intr_init_pv(0)) BUG(); if (!alloc_cpumask_var(&xen_cpu_initialized_map, GFP_KERNEL)) -boris ... _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |