qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Re: [PATCH] new parameter boot=on|off for "-net nic" an


From: Anthony Liguori
Subject: Re: [Qemu-devel] Re: [PATCH] new parameter boot=on|off for "-net nic" and "-device" NIC devices
Date: Tue, 21 Sep 2010 10:19:03 -0500
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.12) Gecko/20100826 Lightning/1.0b1 Thunderbird/3.0.7

On 09/21/2010 09:18 AM, Bernhard Kohl wrote:
Am 19.09.2010 18:07, schrieb ext Michael S. Tsirkin:
On Tue, Sep 14, 2010 at 05:46:55PM +0200, Bernhard Kohl wrote:
>  This patch was motivated by the following use case: In our system
>  the VMs usually have 4 NICs, any combination of virtio-net-pci and
>  pci-assign NIC devices. The VMs boot via gPXE preferably over the
>  pci-assign devices.
> >  There is no way to make this working with a combination of the
>  current options -net -pcidevice -device -optionrom -boot.
> >  With the parameter boot=off it is possible to avoid loading
>  and using gPXE option ROMs either for old style "-net nic" or
>  for "-device" NIC devices. So we can select which NIC is used
>  for booting.
> >  A side effect of the boot=off parameter is that unneeded ROMs
>  which might waste memory are not longer loaded. E.g. if you have
>  2 virtio-net-pci and 2 pci-assign NICs in sum 4 option ROMs are
>  loaded and the virtio ROMs take precedence over the pci-assign
>  ROMs. The BIOS uses the first gPXE ROM which it finds and only
>  needs one of them even if there are more NICs of the same type.
> >  Without using the boot=on|off parameter the current behaviour
>  does not change.
> >  Signed-off-by: Thomas Ostler<address@hidden>
>  Signed-off-by: Bernhard Kohl<address@hidden>
I think this is useful, however:

- We have bit properties which handle parsing on/off
   and other formats automatically. Please don't use string.
- boot is not a great property name for PCI: what
   you actually do is disable option rom.
   So maybe call it 'rom' or something like that?
Our main goal is to select a certain NIC's option rom for booting.
So the other roms are not needed and not loaded. We used 'boot'
as the property name as it is similar as in the '-drive' option to
select a certain disk for booting. What's about to call it 'bootrom'?

This is the wrong approach. A rom doesn't have to be BEV and if it's not BEV or PnP, it may search for any device it can understand. So even if you did boot=on to the third NIC, the first NIC may be booted from. So just suppressing ROM loading does not imply that any specific device will be chosen to boot from.

The correct approach is to communicate to the BIOS which of the boot entries you would like to be chosen by default. That means QEMU and SeaBIOS need to agree on a mechanism to map QEMU visible devices to a boot entry.

Regards,

Anthony Liguori




reply via email to

[Prev in Thread] Current Thread [Next in Thread]