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

Re: [Xen-devel] Bug in pirq_guest_unbind.



>>> Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> 09.12.09 15:30 >>>
>I've been able to generate this error by making the
>xen_unmap_pirq request happen a bit too early in the shutdown
>process of the guest. This does not happen with xm unless you
>move some functions around. But nonethless it looks like
>a racing issue. I was thinking to work on this at some point
>but I still have work on the dom0 to finish up.So
>if anybody wants to look at this I can give more details.
>
>
>856] switch: port 2(vif1008.0) entering disabled state
>[  792.145541] device vif1008.0 left promiscuous mode
>[  79[  792.169512] pciback pci-1008-0: fe state changed 6
>(XEN) irq.c:1514: dom1008: pirq 16 not mapped
>(XEN) irq.c:1514: dom1008: pirq 16 not mapped
>(XEN) irq.c:1522: dom1008: forcing unbind of pirq 17
>(XEN) ----[ Xen-3.5-unstable  x86_64  debug=y  Tainted:    C ]----
>(XEN) CPU:    2
>(XEN) RIP:    e008:[<ffff82c48011da93>] che021ff5fc78   rsp: ffff83021ff5fc78  
> r8:  0000000040caba40
>(XEN) r9:  00000000deadbeef   r10: ffff82c4801ff7a0   r11: 0000000000000282
>(XEN) r12: 0000000000000286   r13: ffff83821ff7f834   r14: 0000000000000044
>(XEN) r15: ffff83821ff7f800   cr0: 000000008005003b   cr4: 00000000000006f0
>(XEN) cr3: 000000020b1b4000   cr2: ffff83821ff7f838
>(XEN) ds: 0000   es: 0000   fs: 0063   gs: 0000   ss: e010   cs: e008
>(XEN) Xen stack trace from rsp=ffff83021ff5fc78:
>(XEN)    ffff83021ff5fc98 ffff82c48011ddbe ffff83020ac62000 00000000ffffffef

The last value is -17, so I guess a negative irq got returned here. c/s
18539 made this possible (still using vectors back then), but in changing
(to introduce domain_spin_lock_irq_desc()) my originally submitted
patch it seems like handling this possibility got partly lost (this new
function declared vector [now irq] as 'unsigned int', so the <= 0 check
didn't do what it's supposed to do anymore. With all the subsequent
changes I'm not certain, however, that simply changing the variable
declaration would be correct, thus it would be nice if whoever
contributed the vector->irq conversion patch could double check that.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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