[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [Patch[ xl problems with xendomains
Il 21/05/2013 23:12, Ian Murray ha scritto: Hi,Ever since xl become the preferred toolstack, I have had problems using the xendomains startup/shutdown script. Having retested today, it seems that the issues are now reduced down to xendomains being unable to restart previously saved domains.Here is a typical session using xl running Xen 4.2.2 on Ubuntu 64 12.04 bit server, using stock Dom0 kernel (3.2.0-43-generic)root@xen6:/etc/init.d# service xendomains start root@xen6:/etc/init.d# service xendomains stop Shutting down Xen domains: * [done] root@xen6:/etc/init.d# xl create /etc/xen/vpn2 Parsing config from /etc/xen/vpn2 Daemon running with PID 3969 root@xen6:/etc/init.d# service xendomains start root@xen6:/etc/init.d# service xendomains stop Shutting down Xen domains: vpn2(save).... * [done] root@xen6:/etc/init.d# service xendomains startRestoring Xen domains:/etc/init.d/xendomains: line 258: [: too many arguments* [done] root@xen6:/# rm /var/lib/xen/save/vpn2 Line 258 reads as:- - if [ $HEADER = "LinuxGuestRecord" ]; thenThere were further issues of xendomains not suspending domains properly but this appear resolved now because I think the behaviour of xl list -l has changed. AFAIR an extra 'domain' identifier was thrown in which was causing issues with the regex parser.Anyway, as far as I can tell, the two issues that I see are that the if statement at line 258 borks because there are no quotes around the $HEADER. I'll leave it to the Bash gurus to explain that; I am not one and I just hacked it to work.Secondly, it would appear that when using xl to save a running domain, the header in the save file does not contain the text "LinuxGuestRecord" but in fact contains "Xen saved domain". This causes xendomains to miss the save files and will not try to restore them. Placing a simple variable that contains the correct header text appears to fix this.So applying the following patch to xendomains appears to ease these issues. Please be aware that I haven't tested this on anything earlier than 4.2.2 and hasn't been tested at all using xm, although the issues with the regex would likely break xm rather than the change below. Looking back at my original submission (2 years ago), I reported the issues against 4.1.1. As previously stated this had more problems because of differing output of xl list -l, which appears to be employed by xendomains. I haven't thoroughly tested the patch against every combination of domains sysreq'd, etc, but it appears to work for auto start, save and restore.Thanks for reading and I hope this makes sense, Ian. Signed-off-by: Ian MURRAY <murrayie@xxxxxxxxxxx> Tested-by: Fabio Fantoni <fabio.fantoni@xxxxxxx> --- xendomains.422.orig 2013-05-19 18:06:18.525195879 +0100 +++ xendomains 2013-05-21 21:27:57.253429073 +0100 @@ -28,10 +28,12 @@ ### END INIT INFO CMD=xm ++HEADCOMP="LinuxGuestRecord" $CMD list &> /dev/null if test $? -ne 0 then CMD=xl + HEADCOMP="Xen saved domain" fi $CMD list &> /dev/null @@ -255,7 +257,7 @@ for dom in $XENDOMAINS_SAVE/*; do if [ -f $dom ] ; then HEADER=`head -c 16 $dom | head -n 1 2> /dev/null` - if [ $HEADER = "LinuxGuestRecord" ]; then + if [ "$HEADER" = "$HEADCOMP" ]; then echo -n " ${dom##*/}" XMR=`$CMD restore $dom 2>&1 1>/dev/null` #$CMD restore $dom _______________________________________________ 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 |