Currently, boot order can be specified per device class but there is no way to specify exact disk/NIC device to boot from. This patchset fixes that. There were two options suggested for how this should be modeled in domain XML: 1) <os> <boot target='net1'/> <boot target='net0'/> <boot target='hdc'/> <boot target='hdb'/> <os> Where target attributes would match /domain/devices/*/target@dev 2) Adding <boot order='n'/> elements into appropriate device elements. In addition to the two options Rich suggested a more compact variant of option 1. Per former discussion this patchset implements the second option. Jiri Denemark (5): conf: Move boot parsing into a separate function Introduce per-device boot element qemu: Refactor qemuCapsParsePCIDeviceStrs using virCommand qemu: Support per-device boot ordering tests: Add tests for per-device boot elements docs/formatcaps.html.in | 1 + docs/formatdomain.html.in | 41 +++++- docs/schemas/domain.rng | 20 +++- src/conf/capabilities.c | 3 +- src/conf/domain_conf.c | 148 ++++++++++++++------ src/conf/domain_conf.h | 2 + src/qemu/qemu_capabilities.c | 82 +++++++---- src/qemu/qemu_capabilities.h | 1 + src/qemu/qemu_command.c | 15 ++- src/qemu/qemu_command.h | 6 +- src/qemu/qemu_driver.c | 2 + src/qemu/qemu_hotplug.c | 8 +- .../qemuxml2argvdata/qemuxml2argv-boot-order.args | 1 + tests/qemuxml2argvdata/qemuxml2argv-boot-order.xml | 44 ++++++ tests/qemuxml2argvtest.c | 2 + tests/qemuxml2xmltest.c | 1 + 16 files changed, 291 insertions(+), 86 deletions(-) create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-boot-order.args create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-boot-order.xml -- 1.7.4.rc1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list