All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michal Novotny <minovotn@redhat.com>
To: Ian Campbell <Ian.Campbell@eu.citrix.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
	"'xen-devel@lists.xensource.com'" <xen-devel@lists.xensource.com>
Subject: Re: [PATCH] Fix bootloader handling when empty string is being output
Date: Tue, 31 Aug 2010 13:14:11 +0200	[thread overview]
Message-ID: <4C7CE403.1030506@redhat.com> (raw)
In-Reply-To: <1283251070.12544.9397.camel@zakaz.uk.xensource.com>

On 08/31/2010 12:37 PM, Ian Campbell wrote:
> 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@citrix.com>
> 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.
>
>
>    
Oh, this may be the one. What I was using was staging xen-unstable. I'll 
try to revert this one.

Thanks,
Michal

-- 
Michal Novotny<minovotn@redhat.com>, RHCE
Virtualization Team (xen userspace), Red Hat

  reply	other threads:[~2010-08-31 11:14 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-30 13:10 [PATCH] Fix bootloader handling when empty string is being output Michal Novotny
2010-08-31  8:47 ` Ian Campbell
2010-08-31  9:16   ` Paolo Bonzini
2010-08-31 10:00     ` Michal Novotny
2010-08-31 10:10       ` Ian Campbell
2010-08-31 10:18         ` Michal Novotny
2010-08-31 10:30           ` Paolo Bonzini
2010-08-31 11:12             ` Michal Novotny
2010-08-31 10:37           ` Ian Campbell
2010-08-31 11:14             ` Michal Novotny [this message]
2010-08-31 11:18             ` Michal Novotny
2010-08-31 11:33             ` Michal Novotny
2010-08-31 17:56 ` Ian Jackson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4C7CE403.1030506@redhat.com \
    --to=minovotn@redhat.com \
    --cc=Ian.Campbell@eu.citrix.com \
    --cc=pbonzini@redhat.com \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.