[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] R: Xen crash in cpupool_assign_cpu_locked spinlock



Thanks for reporting, and thanks Andrew for Cc-ing me.

I saw what the issue is already, I'll patch it first thing Monday morning.

I did some last minute refactoring during which I wrongly replaced one pcpu_schedule_lock_irq(), with just pcpu_schedule_lock(), and did the last round of testing with 'debug=n'... sorry.

Regards, Dario

(Sorry also for top posting, and in general, the formatting of this email)


Inviato da Samsung Mobile


-------- Messaggio originale --------
Da: Andrew Cooper
Data:09/04/2016 20:36 (GMT+01:00)
A: Aaron Cornelius ,xen-devel@xxxxxxxxxxxxxxxxxxxx,Dario Faggioli
Oggetto: Re: [Xen-devel] Xen crash in cpupool_assign_cpu_locked spinlock

On 09/04/16 19:33, Aaron Cornelius wrote:
> I am not really sure where bugs on the staging branch should be reported.  I
> just found this one and couldn't find anywhere that it had been reported yet.

This is the correct place.

CC'ing Dario who is the author of the recent scheduler changes in staging.

~Andrew

>
> I have a Xen/Ubuntu 14.04 VM (in virtualbox) with 2 CPUs allocated to it, when
> it boots I remove a CPU from the default pool (because it's allocated to a new
> credit schedule in the new cpuppol config file), and when I create the cpupool
> Xen crashes.
>
> I just pulled the staging branch from git://xenbits.xen.org/xen.git a few hours
> ago.  I ran this with a fresh pull of master yesterday and I did not experience
> this issue.
>
> Here are the commands:
> $ sudo xl cpupool-cpu-remove Pool-0 1
> $ sudo xl cpupool-create /etc/xen/newpool
> <hangs and reboots>
>
> Here is the new cpupool config file:
> $ cat /etc/xen/newpool
> name = "newpool"
> sched = "credit"
> cpus = ["1"]
>
> And here is the xen console output:
> (XEN) Xen BUG at spinlock.c:48
> (XEN) ----[ Xen-4.7-unstable  x86_64  debug=y  Not tainted ]----
> (XEN) CPU:    0
> (XEN) RIP:    e008:[<ffff82d08012fdec>] spinlock.c#check_lock+0x3c/0x40
> (XEN) RFLAGS: 0000000000010246   CONTEXT: hypervisor (d0v1)
> (XEN) rax: 0000000000000001   rbx: ffff83007ffe4148   rcx: 0000000000000000
> (XEN) rdx: 0000000000000001   rsi: ffff82cfffffb300   rdi: ffff83007ffe414e
> (XEN) rbp: ffff83007fd07c90   rsp: ffff83007fd07c90   r8:  ffff830072629ed0
> (XEN) r9:  00000000deadbeef   r10: ffff82d08025edc0   r11: 0000000000000286
> (XEN) r12: ffff830072629c60   r13: ffff830072629840   r14: ffff82d0802e4a40
> (XEN) r15: ffff82d08033bd40   cr0: 0000000080050033   cr4: 00000000000406a0
> (XEN) cr3: 000000004c536000   cr2: 00007fc1e682bab5
> (XEN) ds: 0000   es: 0000   fs: 0000   gs: 0000   ss: e010   cs: e008
> (XEN) Xen code around <ffff82d08012fdec> (spinlock.c#check_lock+0x3c/0x40):
> (XEN)  00 98 83 f2 01 39 d0 75 <02> 0b 5d c3 55 48 89 e5 f0 ff 05 49 4d 1b 00 5d
> (XEN) Xen stack trace from rsp=ffff83007fd07c90:
> (XEN)    ffff83007fd07ca8 ffff82d08012fe1b 0000000000000001 ffff83007fd07d18
> (XEN)    ffff82d08012ec04 0000000000000001 ffff830072629ed0 ffff830072629e70
> (XEN)    0000000000000001 ffff83007ffe6000 ffff83007ffe4148 ffff830072629840
> (XEN)    0000000000000001 ffff830072629840 ffff82d0802f961c ffff82d080312980
> (XEN)    0000000000000000 ffff83007fd07d38 ffff82d080101b77 ffff83007fd07e48
> (XEN)    0000000000000001 ffff83007fd07d88 ffff82d080102385 000000000006c0dd
> (XEN)    fffffffe00000000 ffff83007fd07d80 ffff83007fd00000 ffff880025cb82f8
> (XEN)    ffff82d0802f961c ffff82d080312980 0000000000000000 ffff83007fd07ef8
> (XEN)    ffff82d0801312e8 0000000000000001 0000000000000000 0000000000000001
> (XEN)    0000000000000000 ffff83007fd07ef8 ffff82d080184d21 ffff83007faee0c0
> (XEN)    00007fc1e6eec004 ffff83007fd07e48 ffff82d08010acf7 0700000000000206
> (XEN)    ffff83007ffea010 ffff83007fd07ea8 ffff83007fd07ea4 000000000006c0dd
> (XEN)    ffff83007ffb6000 000000000006c0dd 0000000000000000 ffff820040005000
> (XEN)    ffff820040005178 0000000300000000 0000000d00000012 0000000100000004
> (XEN)    0000000000000001 0000000000000001 00000000000000e2 00007fc1e59b67e8
> (XEN)    0000000000000000 00007ffc3a785990 0000000000408000 00007fc1e6ce3515
> (XEN)    0000000000da09e0 0000000000000001 0000000000000001 0000000000000001
> (XEN)    0000000000da09e0 0000000000000000 ffffffc5ac7667a4 0000000000000033
> (XEN)    ffff83007ffb6000 ffff880025cb82f8 00007ffc3a785760 0000000000305000
> (XEN)    00007ffc3a785760 00007cff802f80c7 ffff82d0802418a2 ffffffff8100146a
> (XEN) Xen call trace:
> (XEN)    [<ffff82d08012fdec>] spinlock.c#check_lock+0x3c/0x40
> (XEN)    [<ffff82d08012fe1b>] _spin_lock+0x11/0x52
> (XEN)    [<ffff82d08012ec04>] schedule_cpu_switch+0x17f/0x24a
> (XEN)    [<ffff82d080101b77>] cpupool.c#cpupool_assign_cpu_locked+0x2b/0x113
> (XEN)    [<ffff82d080102385>] cpupool_do_sysctl+0x1e2/0x6b4
> (XEN)    [<ffff82d0801312e8>] do_sysctl+0x625/0x1088
> (XEN)    [<ffff82d0802418a2>] lstar_enter+0xe2/0x13c
> (XEN)
> (XEN)
> (XEN) ****************************************
> (XEN) Panic on CPU 0:
> (XEN) Xen BUG at spinlock.c:48
> (XEN) ****************************************
>
> - Aaron Cornelius
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> http://lists.xen.org/xen-devel

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.