Mailing List Archive

[RFC] [PATCH] Plumb bootloader I/O through xenconsole.
The attached patches change the way the bootloader is called when
creating a PV domain. Currently, in order to provide an interactive
environment for the bootloader, the bootloader is run by xm create,
using the tty of xm create's caller. This is a problem when a domain is
rebooted, as there is no equivalent of xm create with a useful tty.

With these patches, Xend always calls the bootloader, and its
interactive I/O is passed through the same pty channel that the domain's
console will use when it is created.

All comments appreciated!

Details:

Patch 1 (ptsname) is a wrapper around the ptsname(3) POSIX library
function, which doesn't appear to be available in python otherwise.

Patch 2 (bootloader-console) makes the following changes:
- the xenconsole client can handle the domain's console pty changing.
- xend forwards console traffic between the running bootloader and a pty
which it writes to the store so the xenconsole client can see it.
- xend runs the bootloader interactively unless the config file
tells it explicitly not to.
- xm create no longer runs the bootloader.

Yet to come: making "xm console" and "xm create -c" attach early enough
in domain building to see the bootloader (at the moment you need to run
xenconsole by hand for that).

Cheers,

Tim.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Re: [RFC] [PATCH] Plumb bootloader I/O through xenconsole. [ In reply to ]
Argh. Patches are actually attached this time. :)

Tim.

At 16:20 +0000 on 15 Jan (1168878014), Tim Deegan wrote:
> The attached patches change the way the bootloader is called when
> creating a PV domain. Currently, in order to provide an interactive
> environment for the bootloader, the bootloader is run by xm create,
> using the tty of xm create's caller. This is a problem when a domain is
> rebooted, as there is no equivalent of xm create with a useful tty.
>
> With these patches, Xend always calls the bootloader, and its
> interactive I/O is passed through the same pty channel that the domain's
> console will use when it is created.
>
> All comments appreciated!
>
> Details:
>
> Patch 1 (ptsname) is a wrapper around the ptsname(3) POSIX library
> function, which doesn't appear to be available in python otherwise.
>
> Patch 2 (bootloader-console) makes the following changes:
> - the xenconsole client can handle the domain's console pty changing.
> - xend forwards console traffic between the running bootloader and a pty
> which it writes to the store so the xenconsole client can see it.
> - xend runs the bootloader interactively unless the config file
> tells it explicitly not to.
> - xm create no longer runs the bootloader.
>
> Yet to come: making "xm console" and "xm create -c" attach early enough
> in domain building to see the bootloader (at the moment you need to run
> xenconsole by hand for that).
>
> Cheers,
>
> Tim.
Re: [RFC] [PATCH] Plumb bootloader I/O through xenconsole. [ In reply to ]
An updated version of this patch is attached. Unless there's any
objection, something very like this will be checked in soon.

This version makes a change to the way Xend records its list of active
domains -- they are now added as soon as they are created, rather than
after startup, which lets "xm console" see domains which are still at
the bootloader stage.

Cheers,

Tim.

At 16:20 +0000 on 15 Jan (1168878014), Tim Deegan wrote:
> The attached patches change the way the bootloader is called when
> creating a PV domain. Currently, in order to provide an interactive
> environment for the bootloader, the bootloader is run by xm create,
> using the tty of xm create's caller. This is a problem when a domain is
> rebooted, as there is no equivalent of xm create with a useful tty.
>
> With these patches, Xend always calls the bootloader, and its
> interactive I/O is passed through the same pty channel that the domain's
> console will use when it is created.
>
> All comments appreciated!
>
> Details:
>
> Patch 1 (ptsname) is a wrapper around the ptsname(3) POSIX library
> function, which doesn't appear to be available in python otherwise.
>
> Patch 2 (bootloader-console) makes the following changes:
> - the xenconsole client can handle the domain's console pty changing.
> - xend forwards console traffic between the running bootloader and a pty
> which it writes to the store so the xenconsole client can see it.
> - xend runs the bootloader interactively unless the config file
> tells it explicitly not to.
> - xm create no longer runs the bootloader.
>
> Yet to come: making "xm console" and "xm create -c" attach early enough
> in domain building to see the bootloader (at the moment you need to run
> xenconsole by hand for that).
>
> Cheers,
>
> Tim.
Re: [RFC] [PATCH] Plumb bootloader I/O through xenconsole. [ In reply to ]
On Mon, Jan 15, 2007 at 04:20:14PM +0000, Tim Deegan wrote:

> Yet to come: making "xm console" and "xm create -c" attach early enough
> in domain building to see the bootloader (at the moment you need to run
> xenconsole by hand for that).

Do you have a timeline? The code needs some portability changes for
streams (%%^%$^) and I don't want to step on your toes.

regards
john

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Re: [RFC] [PATCH] Plumb bootloader I/O through xenconsole. [ In reply to ]
At 01:43 +0000 on 30 Jan (1170121397), John Levon wrote:
> On Mon, Jan 15, 2007 at 04:20:14PM +0000, Tim Deegan wrote:
>
> > Yet to come: making "xm console" and "xm create -c" attach early enough
> > in domain building to see the bootloader (at the moment you need to run
> > xenconsole by hand for that).
>
> Do you have a timeline? The code needs some portability changes for
> streams (%%^%$^) and I don't want to step on your toes.

That was in the next patch I posted, and has now gone into -unstable.

Cheers,

Tim.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Re: [RFC] [PATCH] Plumb bootloader I/O through xenconsole. [ In reply to ]
On Tue, Jan 30, 2007 at 09:17:33AM +0000, Tim Deegan wrote:

> > > Yet to come: making "xm console" and "xm create -c" attach early enough
> > > in domain building to see the bootloader (at the moment you need to run
> > > xenconsole by hand for that).
> >
> > Do you have a timeline? The code needs some portability changes for
> > streams (%%^%$^) and I don't want to step on your toes.
>
> That was in the next patch I posted, and has now gone into -unstable.

Hmmph. I don't seem to be seeing any bootloader output, but if I use xm
console directly, I can...

regards
john

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel