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

Re: [Xen-devel] xcs segfaults on vm shutdown



Richard Sterling Cox wrote:

hi,

I'm experiencing regular seg-faults of the xcs daemon during vm
shutdown operations (occurring somewhere between 5 and 25 VMs run,
typically).
I've seen xcs crash a number of times with vm-tools. What arguments were you passing to vm-shutdown? The default operation is to simply send a CMSG_SHUTDOWN to the domain.

If you're doing a '-d' which invokes xc_destroy, I think that perhaps what's happening is that xcs is not gracefully handling a disappearing VM.

Regards,

xen: unstable patched through 2005-03-07
dom0: linux-2.6.10-xen0 / Fedora Core 3
gcc: 3.4.2 20041017 (Red Hat 3.4.2-6.fc3)
vmtools: 0.0.3 I believe, but they report (-V) 0.0.1, which is not
        true
(not using xend)

The errors usually seem to occur while running 'vm-shutdown'.

I have been running 'xcs -i' under gdb and found that, at least twice,
the error is at xen/tools/xcs/ctrl_interface.c:143. Here is the output
of one such session (the error is repeatable enough that I should be
able to provide other info if anyone is interested):

Program received signal SIGSEGV, Segmentation fault.
0x080490b9 in ctrl_chan_request_to_read (cc=0x8050a60) at ctrl_interface.c:143
143         return (RING_HAS_UNCONSUMED_REQUESTS(CTRL_RING, &cc->tx_ring));

(gdb) bt
#0  0x080490b9 in ctrl_chan_request_to_read (cc=0x8050a60) at 
ctrl_interface.c:143
#1  0x0804a8d7 in handle_ctrl_if () at xcs.c:550
#2  0x0804ae93 in main (argc=2, argv=0xbffffa74) at xcs.c:737
(gdb) print cc
$1 = (control_channel_t *) 0x8050a60
(gdb) print *cc
$2 = {connected = 1, ref_count = 1, type = 0, remote_dom = 26, local_port = 73, 
remote_port = 1,
 interface = 0xb7ff0800, tx_ring = {rsp_prod_pvt = 0, req_cons = 0, sring = 
0xb7ff0800},
 rx_ring = {req_prod_pvt = 0, rsp_cons = 0, sring = 0xb7ff0a08}, virq = 0}
(gdb) print *(cc->tx_ring->sring)
Cannot access memory at address 0xb7ff0800
(gdb) up
#1  0x0804a8d7 in handle_ctrl_if () at xcs.c:550
550             while (ctrl_chan_request_to_read(cc))
(gdb) print chan
$4 = 73
(gdb) print cc_list[chan]
$6 = (control_channel_t *) 0x8050a60


rick



-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel




-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel


 


Rackspace

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