On Tue, Oct 23, 2012 at 12:20:08PM +0200, Alexander Graf wrote: > > On 23.10.2012, at 12:09, Avik Sil wrote: > > > This patch makes default boot order machine specific instead of > > set globally. The default boot order can be set per machine in > > QEMUMachine default_machine_opts, or by the command line using > > -machine <machine_name>,boot=<boot_devices>, or by standard -boot > > option. This allows a machine to receive a NULL boot order when > > -boot isn't used and take an appropriate action accordingly. This > > helps machine boots from the devices as set in guest's non-volatile > > memory location in case no boot order is provided by the user. > > > > Signed-off-by: Avik Sil <avik...@linux.vnet.ibm.com> > > --- > > hw/nseries.c | 2 ++ > > hw/pc_piix.c | 13 ++++++++++++- > > hw/ppc_newworld.c | 1 + > > hw/ppc_oldworld.c | 1 + > > hw/ppc_prep.c | 1 + > > hw/sun4m.c | 10 ++++++++++ > > hw/sun4u.c | 3 +++ > > That feels like too much magic for my taste. Can't we have some > default macro (or even the explicit "cad" thing) that we push to > _every_ machine description out there? The next patch to implement > boot= for pseries would then remove this default value for the > pseries machine.
I'm not 100% clear on what you mean here. Do you just mean: #define DEFAULT_BOOT_ORDER "boot=cad" and then we use .default_machine_opts = DEFAULT_BOOT_ORDER, or something else? > The way the patch works right now, the "make machine specific" patch > indirectly also changes the behavior for a bunch of machines. A bunch? I thought the only machine whose behaviour changed was pseries. I agree that moving the behaviour change into a separate patch would be a better idea, but if there are machines other than pseries with changed behaviour by this patch, then that's a plain old bug, rather than a mere question of patch elegance. -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson