[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3 00/18] libxl: domain save/restore: run in a separate process
On Wed, 2012-06-13 at 09:59 +0100, Ian Campbell wrote: > On Fri, 2012-06-08 at 18:34 +0100, Ian Jackson wrote: > > This is v3 of my series to asyncify save/restore, rebased to current > > tip, retested, and with all comments addressed. > > There's quite a lot of combinations which need testing here (PV, HVM, > HVM w/ stub dm, old vs new qemu etc etc), which of those have you tried? > > I tried a simple localhost migrate of a PV guest and: > # xl -vvv migrate d32-1 localhost > migration target: Ready to receive domain. > Saving to migration stream new xl format (info 0x0/0x0/3541) > libxl: debug: libxl.c:722:libxl_domain_suspend: ao 0x8069720: create: > how=(nil) callback=(nil) poller=0x80696c8 > Loading new save file <incoming migration stream> (new xl fmt info > 0x0/0x0/3541) > Savefile contains xl domain config > libxl: debug: libxl_dom.c:969:libxl__toolstack_save: domain=2 > toolstack data size=8 > libxl: debug: libxl.c:745:libxl_domain_suspend: ao 0x8069720: > inprogress: poller=0x80696c8, flags=i > libxl-save-helper: debug: starting save: Success > xc: detail: Had 0 unexplained entries in p2m table > xc: Saving memory: iter 0 (last sent 0 skipped 0): 0/131072 0% > > at which point it appears to just stop. > > # strace -p 2872 # /usr/lib/xen/bin/libxl-save-helper --save-domain 8 > 2 0 0 1 0 0 12 8 72 > Process 2872 attached - interrupt to quit > write(8, 0xb5d31000, 1974272^C <unfinished ...> > Process 2872 detached > # strace -p 2866 # /usr/lib/xen/bin/libxl-save-helper > --restore-domain 0 3 1 0 2 0 0 1 0 0 0 The first zero here is restore_fd, I think. But I read in the comment in the helper: > + * The helper talks on stdin and stdout, in binary in machine > + * endianness. The helper speaks first, and only when it has a > + * callback to make. It writes a 16-bit number being the message > + * length, and then the message body. So restore_fd == stdin => running two protocols over the same fd? > Process 2866 attached - interrupt to quit > read(0, ^C <unfinished ...> > # strace -p 4070 # xl -vvv migrate d32-1 localhost > Process 4070 attached - interrupt to quit > restart_syscall(<... resuming interrupted call ...> > # strace -p 4074 # xl migrate-receive > Process 4074 attached - interrupt to quit > restart_syscall(<... resuming interrupted call ...> > > So the saver seems to be blocked writing to fd 8, which is argv[1] == io_fd. > > Also FWIW: > # xl list > Name ID Mem VCPUs State > Time(s) > Domain-0 0 511 4 r----- > 24.5 > d32-1 2 128 4 -b---- > 0.4 > d32-1--incoming 3 0 0 --p--- > 0.0 > > /var/log/xen/xl-d32-1.log is just "Waiting for domain d32-1 (domid 9) to > die [pid 4045]" (nb: this was a newer attempt than the ones above, to be > sure I was looking at the right log, so the domid's don't match, 9 == > d32-1 not the incoming one). There is no xl log for the incoming domain. > > Also it'd be worth pinging/CCing Shriram next time to get him to sanity > test the Remus cases too. > > I'm in the middle of reviewing #5/19 (the meat), I'll keep going > although I doubt I'll spot the cause of this... > > Ian. > > > > _______________________________________________ > 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
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |