This has been rotting in my tree since February. Sorry about that. I'm afraid -boot regressed in 1.4, specifically commit e4ada29e. This series fixes it, along with related bugs, and tops off with tests.
PATCH 01-03 fix the regression, PATCH 04 cleans up afterwards. I'm refraining from nominating them for stable, because we regressed quite some time ago, and the fix isn't exactly minimal. PATCH 05 makes -no-fd-bootchk behave more sanely, and PATCH 06 fixes up docs. The case for stable is even weaker here: the old behavior hasn't changed in quite a few releases, and nobody complained. PATCH 07 tweaks qtest to make testing -boot once possible. The remaining patches add tests. v3: * Rebased, with only trivial conflicts * PATCH 08 cosmetic improvements * More test cases: new PATCH 09-16 v2: * New PATCH 7 to make testing -boot once possible * Old PATCH 5 reworked and extended became PATCH 8 * Writing more tests uncovered -no-fd-bootchk weirdness, cleaned up in new PATCH 5+6 Andreas Färber (1): boot-order-test: Add tests for PowerMacs Markus Armbruster (15): vl: Clean up parsing of -boot option argument qemu-option: check_params() is now unused, drop it vl: Fix -boot order and once regressions, and related bugs vl: Rename *boot_devices to *boot_order, for consistency pc: Make -no-fd-bootchk stick across boot order changes doc: Drop ref to Bochs from -no-fd-bootchk documentation qtest: Don't reset on qtest chardev connect boot-order-test: New; covering just PC for now boot-order-test: Cover -boot once in ppc tests boot-order-test: Better separate target-specific and generic parts boot-order-test: Code motion for better readability boot-order-test: Add tests for PowerPC PREP boot-order-test: Add tests for Sun4m boot-order-test: Support fw_cfg in I/O space boot-order-test: Add tests for Sun4u hw/i386/pc.c | 7 +- include/hw/hw.h | 4 +- include/qemu/option.h | 2 - qemu-options.hx | 3 +- qtest.c | 7 +- tests/Makefile | 4 + tests/boot-order-test.c | 234 ++++++++++++++++++++++++++++++++++++++++++++++++ util/qemu-option.c | 30 ------- vl.c | 121 +++++++++---------------- 9 files changed, 291 insertions(+), 121 deletions(-) create mode 100644 tests/boot-order-test.c -- 1.7.11.7