[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 00/22] Vixen: A PV-in-HVM shim

On Mon, Jan 8, 2018 at 9:34 AM, Wei Liu <wei.liu2@xxxxxxxxxx> wrote:
> On Mon, Jan 08, 2018 at 09:03:44AM -0800, Anthony Liguori wrote:
>> On Mon, Jan 8, 2018 at 8:39 AM, Ian Jackson <ian.jackson@xxxxxxxxxxxxx> 
>> wrote:
>> > Wei Liu writes ("Re: [Xen-devel] [PATCH 00/22] Vixen: A PV-in-HVM shim"):
>> >> On Mon, Jan 08, 2018 at 08:02:07AM -0800, Anthony Liguori wrote:
>> >> > OTOH, the HVM version of the series requires no tools changes and
>> >> > works on Xen versions going back to 3.4 (at least).
>> >
>> > That depends, I think, on how you are selecting the guest kernel.
>> >
>> > libxl (at least, older libxls) don't support direct kernel boot in HVM
>> > mode.  So if you were using kernel= in your config file that won't
>> > work without libxl changes which are really hard to do and also
>> > maintain ABI compatibility.
>> >
>> > Likewise bootloader= (eg bootloader="pygrub").
>> I think pvgrub is a pretty reasonable alternative to pygrub for most people.
>> What we specifically did was take the kernel/etc arguments and used them
>> to generate an ISO with isolinux with the shim embedded in the ISO.
>> While it does work to set boot="d" and add the ISO to the disk=[] option, we
>> preferred to use a wrapper around qemu to directly add a -cdrom option so
>> that the ISO would not be exposed as a blkback device.
> If you use an ISO which boots isolinux, when and where do you get
> hvm_start_info?

hvmloader is still used.   The full HVM boot stack is intact so it's
hvmloader -> {pcbios,seabios} -> boot loader.

For testing, I've been using grub as the boot loader but isolinux
works fine too.

The shim is booted as a multiboot kernel and the original
kernel/initrd are passed as multiboot modules.


Anthony Liguori

> Wei.

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.