On 01/09/2013 10:22 AM, Daniel P. Berrange wrote:
On Wed, Jan 09, 2013 at 08:14:07AM -0700, Eric Blake wrote:
On 01/09/2013 01:39 AM, Amos Kong wrote:
Current seabios will try to boot from selected devices first, if they are all failed, seabios will also try to boot from un-selected devices.
We need to make it configurable. I already posted a seabios patch to add a new device type to halt booting. Qemu can add "HALT" at the end of bootindex string, then seabios will halt booting after trying to boot from selected devices.
This option only effects when boot priority is changed by bootindex options, the old style(-boot order=..) will still try to boot from un-selected devices.
v2: add HALT entry in get_boot_devices_list() define boot_strict to bool
Signed-off-by: Amos Kong akong@redhat.com
Libvirt will need to expose an attribute that lets the user control whether to use this new option; how do we probe via QMP whether the new -boot strict=on command-line option is available?
While libvirt should make use of this, we don't need to expose it in the XML. This new behaviour is what we wanted to have all along, so we should just enable it.
I agree that this is the way it *should* always work, but apparently there are people who depend on the old behavior, so just doing a blanket switch to the new behavior could lead to setups that no longer work "properly" after an upgrade, which unfortunately means that existing functionality needs to be maintained, and "correct" functionality must be triggered by a config switch (maybe Gleb can expand on the use cases that require this if more details are needed, as it's him I heard this from)