[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Re: [PATCH] Fix bootloader handling when empty string is being output
On 08/31/2010 12:37 PM, Ian Campbell wrote: Thanks Ian! I've tested the patch and it's working fine. You can push it to the tree since it helped me with this one and `xm create -c PVguest` syntax was working fine when applied.On Tue, 2010-08-31 at 11:18 +0100, Michal Novotny wrote:On 08/31/2010 12:10 PM, Ian Campbell wrote:On Tue, 2010-08-31 at 11:00 +0100, Michal Novotny wrote:I don't know how it's working with upstream version since I found out that syntax like `xm create -c PVguest` with default settings (pyGrub bootloader) doesn't show the pyGrub at all so I don't know what's wrong with my setup. I'm using 2.6.32.15-xen kernel/hypervisor version with latest unstable user-space tools. Any hint how this should be working Ian?It should be working as you expect, e.g. "xm create -c xxx" should show you the pygrub output, unless you have used something like "--entry=x" or "-q" which disable interactive mode in your bootloader_args. I'm afraid I don't know what is broken, I'm reasonably sure it was working for me when I developed libxl_bootloader.c since I was comparing the two. Ian.No Ian, it's not working. The config file is having: ... bootloader = "/usr/bin/pygrub" ... So it should show the pyGrub ncurses screen, right?Correct.But it doesn't show anything on version cloned from git yesterday.xen-unstable or xen-4.0-testing or something else? It looks like this was broken in xen-unstable with 21994:2e08ec0028e4. The patch below should fix it. Ian. Subject: libxl+xend: use correct paths for PV console when running bootloader Makes "{xl,xm} create -c GUEST" work again with pygrub in interactive mode which was broken by 21994:2e08ec0028e4 Signed-off-by: Ian Campbell<ian.campbell@xxxxxxxxxx> diff -r f77e54fadc18 tools/libxl/libxl_bootloader.c --- a/tools/libxl/libxl_bootloader.c Tue Aug 31 09:54:18 2010 +0100 +++ b/tools/libxl/libxl_bootloader.c Tue Aug 31 11:34:20 2010 +0100 @@ -383,7 +383,7 @@ int libxl_run_bootloader(libxl_ctx *ctx, goto out_close; } - dom_console_xs_path = libxl_sprintf(&gc, "%s/serial/0/tty", libxl_xs_get_dompath(&gc, domid)); + dom_console_xs_path = libxl_sprintf(&gc, "%s/console/tty", libxl_xs_get_dompath(&gc, domid)); libxl_xs_write(&gc, XBT_NULL, dom_console_xs_path, "%s", dom_console_slave_tty_path); pid = fork_exec_bootloader(&bootloader_fd, (char *)info->u.pv.bootloader, args); diff -r f77e54fadc18 tools/python/xen/util/diagnose.py --- a/tools/python/xen/util/diagnose.py Tue Aug 31 09:54:18 2010 +0100 +++ b/tools/python/xen/util/diagnose.py Tue Aug 31 11:34:20 2010 +0100 @@ -77,7 +77,7 @@ def diagnose_console(): def diagnose_console(): port = xstransact.Read(dompath + '/console/port') ringref = xstransact.Read(dompath + '/console/ring-ref') - tty = xstransact.Read(dompath + '/serial/0/tty') + tty = xstransact.Read(dompath + '/console/tty') if not port: print "Console port is missing; Xend has failed." diff -r f77e54fadc18 tools/python/xen/xend/XendBootloader.py --- a/tools/python/xen/xend/XendBootloader.py Tue Aug 31 09:54:18 2010 +0100 +++ b/tools/python/xen/xend/XendBootloader.py Tue Aug 31 11:34:20 2010 +0100 @@ -85,7 +85,7 @@ def bootloader(blexec, disk, dom, quiet fcntl.fcntl(m1, fcntl.F_SETFL, os.O_NDELAY) slavename = ptsname.ptsname(m1) - dom.storeDom("serial/0/tty", slavename) + dom.storeDom("console/tty", slavename) # Release the domain lock here, because we definitely don't want # a stuck bootloader to deny service to other xend clients. Michal -- Michal Novotny<minovotn@xxxxxxxxxx>, RHCE Virtualization Team (xen userspace), Red Hat _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |