When PyGrub is used as the bootloader in Xen, it gets passed the first
bootable disk. Xend supports a "bootable"-flag for this, which was
previously unused.
In commit c2969ec7aec5c40519aadf422ab5c47a21938bff the bootable=1 flag
was used to re-order the disks when converting from SEXPR to XML, such
that on re-definition Xend would mark the first disk as bootable.
This got broken with commit c1a98d88255197a8446d08c0b1589861660e9064,
which reorders all disks according to their target-name, making it
impossible to change the boot order without changing the device names.
When converting from Xen-sexpr to xml, Xens boolean bootable-flag is
converted to libvirts cardinal bootIndex, tracking the order of disks as
returned by Xend. This satisfies the requirement of bootIndex being
unique.
When converting back to xen-sexpr, the exact order of bootable disks is
lost, since Xend only stores a boolean flag. If multiple disks are
marked bootable, the behaviour is undefined.
Adapt all Xen-sexpr tests to now contain the extra '(bootbale 0)' flag.
It must be explicitly set, otherwise Xend remembers the old state and
only ever adds the bootable indicator.
Signed-off-by: Philipp Hahn <hahn(a)univention.de>
---
src/xenxs/xen_sxpr.c | 18 +++++++++++-------
tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml | 1 +
.../sexpr2xmldata/sexpr2xml-pv-vfb-type-crash.xml | 1 +
tests/xml2sexprdata/xml2sexpr-boot-grub.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-bridge-ipaddr.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-curmem.sexpr | 2 +-
.../xml2sexpr-disk-block-shareable.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-disk-block.sexpr | 2 +-
.../xml2sexprdata/xml2sexpr-disk-drv-blkback.sexpr | 2 +-
.../xml2sexpr-disk-drv-blktap-qcow.sexpr | 2 +-
.../xml2sexpr-disk-drv-blktap-raw.sexpr | 2 +-
.../xml2sexprdata/xml2sexpr-disk-drv-blktap.sexpr | 2 +-
.../xml2sexpr-disk-drv-blktap2-raw.sexpr | 2 +-
.../xml2sexprdata/xml2sexpr-disk-drv-blktap2.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-disk-drv-loop.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-disk-file.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-escape.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-force-hpet.sexpr | 2 +-
.../xml2sexprdata/xml2sexpr-fv-force-nohpet.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-kernel.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-localtime.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-net-ioemu.sexpr | 2 +-
.../xml2sexprdata/xml2sexpr-fv-net-netfront.sexpr | 2 +-
.../xml2sexprdata/xml2sexpr-fv-parallel-tcp.sexpr | 2 +-
.../xml2sexpr-fv-serial-dev-2-ports.sexpr | 2 +-
.../xml2sexpr-fv-serial-dev-2nd-port.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-serial-file.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-serial-null.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-serial-pipe.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-serial-pty.sexpr | 2 +-
.../xml2sexprdata/xml2sexpr-fv-serial-stdio.sexpr | 2 +-
.../xml2sexpr-fv-serial-tcp-telnet.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-serial-tcp.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-serial-udp.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-serial-unix.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-sound.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-usbmouse.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-usbtablet.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-utc.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-fv-v2.sexpr | 4 ++--
tests/xml2sexprdata/xml2sexpr-fv-vncunused.sexpr | 4 ++--
tests/xml2sexprdata/xml2sexpr-fv.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-net-bridged.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-net-e1000.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-net-routed.sexpr | 2 +-
.../xml2sexprdata/xml2sexpr-no-source-cdrom.sexpr | 4 ++--
tests/xml2sexprdata/xml2sexpr-pci-devs.sexpr | 2 +-
.../xml2sexpr-pv-bootloader-cmdline.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-pv-bootloader.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-pv-localtime.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-pv-vcpus.sexpr | 2 +-
.../xml2sexprdata/xml2sexpr-pv-vfb-new-auto.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-pv-vfb-new.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-pv-vfb-orig.sexpr | 2 +-
tests/xml2sexprdata/xml2sexpr-pv.sexpr | 2 +-
55 files changed, 68 insertions(+), 62 deletions(-)
diff --git a/src/xenxs/xen_sxpr.c b/src/xenxs/xen_sxpr.c
index d44b0dc..d571c72 100644
--- a/src/xenxs/xen_sxpr.c
+++ b/src/xenxs/xen_sxpr.c
@@ -335,6 +335,7 @@ xenParseSxprDisks(virDomainDefPtr def,
{
const struct sexpr *cur, *node;
virDomainDiskDefPtr disk = NULL;
+ int bootIndex = 0;
for (cur = root; cur->kind == SEXPR_CONS; cur = cur->u.s.cdr) {
node = cur->u.s.car;
@@ -494,16 +495,13 @@ xenParseSxprDisks(virDomainDefPtr def,
strchr(mode, '!'))
disk->shared = 1;
+ if (STREQ_NULLABLE(bootable, "1"))
+ disk->bootIndex = ++bootIndex;
+
if (VIR_REALLOC_N(def->disks, def->ndisks+1) < 0)
goto no_memory;
- /* re-order disks if there is a bootable device */
- if (STREQ_NULLABLE(bootable, "1")) {
- def->disks[def->ndisks++] = def->disks[0];
- def->disks[0] = disk;
- } else {
- def->disks[def->ndisks++] = disk;
- }
+ def->disks[def->ndisks++] = disk;
disk = NULL;
}
}
@@ -1736,6 +1734,12 @@ xenFormatSxprDisk(virDomainDiskDefPtr def,
virBufferAddLit(buf, "(mode 'w!')");
else
virBufferAddLit(buf, "(mode 'w')");
+
+ if (def->bootIndex)
+ virBufferAddLit(buf, "(bootable 1)");
+ else
+ virBufferAddLit(buf, "(bootable 0)");
+
if (def->transient) {
XENXS_ERROR(VIR_ERR_CONFIG_UNSUPPORTED,
_("transient disks not supported yet"));
diff --git a/tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml
b/tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml
index 3f501e7..b07bb6e 100644
--- a/tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml
+++ b/tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml
@@ -22,6 +22,7 @@
<driver name='phy'/>
<source dev='/iscsi/winxp'/>
<target dev='hda' bus='ide'/>
+ <boot order='1'/>
</disk>
<disk type='file' device='cdrom'>
<driver name='file'/>
diff --git a/tests/sexpr2xmldata/sexpr2xml-pv-vfb-type-crash.xml
b/tests/sexpr2xmldata/sexpr2xml-pv-vfb-type-crash.xml
index 766c78d..eb830a7 100644
--- a/tests/sexpr2xmldata/sexpr2xml-pv-vfb-type-crash.xml
+++ b/tests/sexpr2xmldata/sexpr2xml-pv-vfb-type-crash.xml
@@ -18,6 +18,7 @@
<driver name='phy'/>
<source dev='/dev/vg_dom0test/test2vm'/>
<target dev='xvda' bus='xen'/>
+ <boot order='1'/>
</disk>
<interface type='bridge'>
<mac address='00:16:36:68:9f:5d'/>
diff --git a/tests/xml2sexprdata/xml2sexpr-boot-grub.sexpr
b/tests/xml2sexprdata/xml2sexpr-boot-grub.sexpr
index 88c0f68..9517246 100644
--- a/tests/xml2sexprdata/xml2sexpr-boot-grub.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-boot-grub.sexpr
@@ -2,4 +2,4 @@
(uuid '596a5d21-71f4-8fb2-e068-e2386a5c413e')(on_poweroff 'destroy')\
(on_reboot 'destroy')(on_crash 'destroy')(image (linux \
(kernel '/usr/lib/xen/boot/pv-grub-x86_64.gz')(args
'(hd0,0)/grub/menu.lst')))\
-(device (vbd (dev 'xvda')(uname 'phy:/dev/MainVG/GuestLV')(mode
'w'))))\
+(device (vbd (dev 'xvda')(uname 'phy:/dev/MainVG/GuestLV')(mode
'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-bridge-ipaddr.sexpr
b/tests/xml2sexprdata/xml2sexpr-bridge-ipaddr.sexpr
index 56ff525..de2e130 100644
--- a/tests/xml2sexprdata/xml2sexpr-bridge-ipaddr.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-bridge-ipaddr.sexpr
@@ -5,6 +5,6 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'file:/root/some.img')(mode 'w')))\
+(uname 'file:/root/some.img')(mode 'w')(bootable 0)))\
(device (vif (mac '00:11:22:33:44:55')(bridge 'xenbr2')\
(script 'vif-bridge')(ip '192.0.2.1'))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-curmem.sexpr
b/tests/xml2sexprdata/xml2sexpr-curmem.sexpr
index e7149b3..97ecf4a 100644
--- a/tests/xml2sexprdata/xml2sexpr-curmem.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-curmem.sexpr
@@ -1,6 +1,6 @@
(vm (name 'rhel5')(memory 175)(maxmem 385)(vcpus 1)\
(uuid '4f77abd2-3019-58e8-3bab-6fbf2118f880')(bootloader
'/usr/bin/pygrub')\
(on_poweroff 'destroy')(on_reboot 'restart')(on_crash
'restart')\
-(device (tap (dev 'xvda')(uname 'tap:aio:/xen/rhel5.img')(mode
'w')))\
+(device (tap (dev 'xvda')(uname 'tap:aio:/xen/rhel5.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1d:06:15')(bridge 'xenbr0')\
(script 'vif-bridge'))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-disk-block-shareable.sexpr
b/tests/xml2sexprdata/xml2sexpr-disk-block-shareable.sexpr
index b8387e5..dbc9de6 100644
--- a/tests/xml2sexprdata/xml2sexpr-disk-block-shareable.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-disk-block-shareable.sexpr
@@ -3,5 +3,5 @@
(on_poweroff 'destroy')(on_reboot 'restart')(on_crash
'restart')\
(image (linux (args 'ro root=/dev/VolGroup00/LogVol00')))\
(device (tap (dev 'xvda')(uname
'tap:aio:/var/lib/xen/images/rhel5pv.img')\
-(mode 'w!')))(device (vif (mac '00:16:3e:23:9e:eb')(bridge
'xenbr0')\
+(mode 'w!')(bootable 0)))(device (vif (mac '00:16:3e:23:9e:eb')(bridge
'xenbr0')\
(script 'vif-bridge'))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-disk-block.sexpr
b/tests/xml2sexprdata/xml2sexpr-disk-block.sexpr
index 960801a..ac21c91 100644
--- a/tests/xml2sexprdata/xml2sexpr-disk-block.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-disk-block.sexpr
@@ -5,4 +5,4 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'phy:/dev/MainVG/GuestLV')(mode 'w'))))\
+(uname 'phy:/dev/MainVG/GuestLV')(mode 'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-disk-drv-blkback.sexpr
b/tests/xml2sexprdata/xml2sexpr-disk-drv-blkback.sexpr
index 960801a..ac21c91 100644
--- a/tests/xml2sexprdata/xml2sexpr-disk-drv-blkback.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-disk-drv-blkback.sexpr
@@ -5,4 +5,4 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'phy:/dev/MainVG/GuestLV')(mode 'w'))))\
+(uname 'phy:/dev/MainVG/GuestLV')(mode 'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap-qcow.sexpr
b/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap-qcow.sexpr
index 1e1b381..7392ce3 100644
--- a/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap-qcow.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap-qcow.sexpr
@@ -5,4 +5,4 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (tap (dev 'xvda')\
-(uname 'tap:qcow:/root/some.img')(mode 'w'))))\
+(uname 'tap:qcow:/root/some.img')(mode 'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap-raw.sexpr
b/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap-raw.sexpr
index 6b66e43..d4cd78c 100644
--- a/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap-raw.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap-raw.sexpr
@@ -5,4 +5,4 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (tap (dev 'xvda')\
-(uname 'tap:aio:/root/some.img')(mode 'w'))))\
+(uname 'tap:aio:/root/some.img')(mode 'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap.sexpr
b/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap.sexpr
index 6b66e43..d4cd78c 100644
--- a/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap.sexpr
@@ -5,4 +5,4 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (tap (dev 'xvda')\
-(uname 'tap:aio:/root/some.img')(mode 'w'))))\
+(uname 'tap:aio:/root/some.img')(mode 'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap2-raw.sexpr
b/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap2-raw.sexpr
index 1e79bcf..7353f2b 100644
--- a/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap2-raw.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap2-raw.sexpr
@@ -5,4 +5,4 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (tap2 (dev 'xvda')\
-(uname 'tap2:aio:/root/some.img')(mode 'w'))))\
+(uname 'tap2:aio:/root/some.img')(mode 'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap2.sexpr
b/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap2.sexpr
index 1e79bcf..7353f2b 100644
--- a/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap2.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-disk-drv-blktap2.sexpr
@@ -5,4 +5,4 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (tap2 (dev 'xvda')\
-(uname 'tap2:aio:/root/some.img')(mode 'w'))))\
+(uname 'tap2:aio:/root/some.img')(mode 'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-disk-drv-loop.sexpr
b/tests/xml2sexprdata/xml2sexpr-disk-drv-loop.sexpr
index dac0aa3..0e416db 100644
--- a/tests/xml2sexprdata/xml2sexpr-disk-drv-loop.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-disk-drv-loop.sexpr
@@ -5,4 +5,4 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'file:/root/some.img')(mode 'w'))))\
+(uname 'file:/root/some.img')(mode 'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-disk-file.sexpr
b/tests/xml2sexprdata/xml2sexpr-disk-file.sexpr
index dac0aa3..0e416db 100644
--- a/tests/xml2sexprdata/xml2sexpr-disk-file.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-disk-file.sexpr
@@ -5,4 +5,4 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'file:/root/some.img')(mode 'w'))))\
+(uname 'file:/root/some.img')(mode 'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-escape.sexpr
b/tests/xml2sexprdata/xml2sexpr-escape.sexpr
index 7b29131..2ece51a 100644
--- a/tests/xml2sexprdata/xml2sexpr-escape.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-escape.sexpr
@@ -7,4 +7,4 @@
core/test/5.91/x86_64/os&version="devel" ')\
(loader '/usr/lib/xen/boot/hvmloader')(vcpus 2)(boot c)(usb 1)(parallel none)\
(serial pty)(device_model '/usr/lib/xen/bin/qemu-dm')))\
-(device (vbd (dev 'ioemu:xvda')(uname 'file:/root/\'\\some.img')(mode
'w'))))\
+(device (vbd (dev 'ioemu:xvda')(uname 'file:/root/\'\\some.img')(mode
'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-force-hpet.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-force-hpet.sexpr
index 400872d..996e618 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-force-hpet.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-force-hpet.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)(serial none)\
(device_model '/usr/lib64/xen/bin/qemu-dm')(hpet 1)(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-force-nohpet.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-force-nohpet.sexpr
index 9577892..b53e316 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-force-nohpet.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-force-nohpet.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)(serial none)\
(device_model '/usr/lib64/xen/bin/qemu-dm')(hpet 0)(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-kernel.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-kernel.sexpr
index 4950832..7cd257d 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-kernel.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-kernel.sexpr
@@ -7,4 +7,4 @@
core/test/5.91/x86_64/os ')(loader '/usr/lib/xen/boot/hvmloader')(vcpus 2)\
(boot c)(usb 1)(parallel none)(serial pty)\
(device_model '/usr/lib/xen/bin/qemu-dm')))\
-(device (vbd (dev 'ioemu:xvda')(uname 'file:/root/some.img')(mode
'w'))))\
+(device (vbd (dev 'ioemu:xvda')(uname 'file:/root/some.img')(mode
'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-localtime.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-localtime.sexpr
index 4f91119..c79addb 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-localtime.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-localtime.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)(serial none)\
(localtime 1)(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-net-ioemu.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-net-ioemu.sexpr
index 71df15b..d37aa62 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-net-ioemu.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-net-ioemu.sexpr
@@ -4,5 +4,5 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)(acpi 1)\
(usb 1)(parallel none)(serial none)(device_model '/usr/lib64/xen/bin/qemu-dm')\
(vnc 1)))(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')\
-(mode 'w')))(device (vif (mac '00:16:3e:1b:b1:47')(bridge
'xenbr0')\
+(mode 'w')(bootable 0)))(device (vif (mac '00:16:3e:1b:b1:47')(bridge
'xenbr0')\
(script 'vif-bridge')(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-net-netfront.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-net-netfront.sexpr
index 7fe2544..705a05d 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-net-netfront.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-net-netfront.sexpr
@@ -4,5 +4,5 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)(acpi 1)\
(usb 1)(parallel none)(serial none)(device_model '/usr/lib64/xen/bin/qemu-dm')\
(vnc 1)))(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')\
-(mode 'w')))(device (vif (mac '00:16:3e:1b:b1:47')(bridge
'xenbr0')\
+(mode 'w')(bootable 0)))(device (vif (mac '00:16:3e:1b:b1:47')(bridge
'xenbr0')\
(script 'vif-bridge')(type netfront))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-parallel-tcp.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-parallel-tcp.sexpr
index 38504b1..7ee0440 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-parallel-tcp.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-parallel-tcp.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel tcp:localhost:9999)\
(serial none)(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-serial-dev-2-ports.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-serial-dev-2-ports.sexpr
index f3bfbd7..f7e8758 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-serial-dev-2-ports.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-serial-dev-2-ports.sexpr
@@ -5,5 +5,5 @@
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)\
(serial (/dev/ttyS0 /dev/ttyS1))(device_model '/usr/lib64/xen/bin/qemu-dm')\
(vnc 1)))(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')\
-(mode 'w')))(device (vif (mac '00:16:3e:1b:b1:47')(bridge
'xenbr0')\
+(mode 'w')(bootable 0)))(device (vif (mac '00:16:3e:1b:b1:47')(bridge
'xenbr0')\
(script 'vif-bridge')(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-serial-dev-2nd-port.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-serial-dev-2nd-port.sexpr
index 9ecbbe0..aef9112 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-serial-dev-2nd-port.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-serial-dev-2nd-port.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)\
(serial (none /dev/ttyS1))(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-serial-file.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-serial-file.sexpr
index be40218..8c36dae 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-serial-file.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-serial-file.sexpr
@@ -5,5 +5,5 @@
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)\
(serial file:/tmp/serial.log)(device_model '/usr/lib64/xen/bin/qemu-dm')\
(vnc 1)))(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')\
-(mode 'w')))(device (vif (mac '00:16:3e:1b:b1:47')(bridge
'xenbr0')\
+(mode 'w')(bootable 0)))(device (vif (mac '00:16:3e:1b:b1:47')(bridge
'xenbr0')\
(script 'vif-bridge')(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-serial-null.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-serial-null.sexpr
index 40243a7..26371d0 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-serial-null.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-serial-null.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)(serial null)\
(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-serial-pipe.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-serial-pipe.sexpr
index 4e2dc78..74f3c23 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-serial-pipe.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-serial-pipe.sexpr
@@ -5,5 +5,5 @@
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)\
(serial pipe:/tmp/serial.pipe)(device_model '/usr/lib64/xen/bin/qemu-dm')\
(vnc 1)))(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')\
-(mode 'w')))(device (vif (mac '00:16:3e:1b:b1:47')(bridge
'xenbr0')\
+(mode 'w')(bootable 0)))(device (vif (mac '00:16:3e:1b:b1:47')(bridge
'xenbr0')\
(script 'vif-bridge')(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-serial-pty.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-serial-pty.sexpr
index 7ae9315..29219f6 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-serial-pty.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-serial-pty.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)(serial pty)\
(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-serial-stdio.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-serial-stdio.sexpr
index 8369bb4..f2c9cff 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-serial-stdio.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-serial-stdio.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)(serial stdio)\
(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-serial-tcp-telnet.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-serial-tcp-telnet.sexpr
index 40120cf..53e393c 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-serial-tcp-telnet.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-serial-tcp-telnet.sexpr
@@ -5,6 +5,6 @@
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)\
(serial telnet:localhost:9999,server,nowait)\
(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-serial-tcp.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-serial-tcp.sexpr
index 7938a7b..09c0f19 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-serial-tcp.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-serial-tcp.sexpr
@@ -5,6 +5,6 @@
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)\
(serial tcp:localhost:9999,server,nowait)\
(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-serial-udp.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-serial-udp.sexpr
index 3c19f25..702e809 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-serial-udp.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-serial-udp.sexpr
@@ -5,6 +5,6 @@
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)\
(serial udp:localhost:9998@localhost:9999)\
(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-serial-unix.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-serial-unix.sexpr
index 67ceeaa..a3f8939 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-serial-unix.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-serial-unix.sexpr
@@ -5,6 +5,6 @@
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)\
(serial unix:/tmp/serial.sock,server,nowait)\
(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-sound.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-sound.sexpr
index 4c37c35..7c00674 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-sound.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-sound.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)(serial none)\
(soundhw 'sb16,es1370')(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc
1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-usbmouse.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-usbmouse.sexpr
index c0ad2bc..057d6d6 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-usbmouse.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-usbmouse.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(usbdevice mouse)(parallel none)\
(serial none)(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-usbtablet.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-usbtablet.sexpr
index ff1c695..5f9465b 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-usbtablet.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-usbtablet.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(usbdevice tablet)(parallel none)\
(serial none)(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-utc.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-utc.sexpr
index 81fb92d..ec672f4 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-utc.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-utc.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)(serial none)\
(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-v2.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-v2.sexpr
index b27e990..c0f7ed1 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-v2.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-v2.sexpr
@@ -4,7 +4,7 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)(acpi 1)\
(usb 1)(parallel none)(serial none)(device_model '/usr/lib64/xen/bin/qemu-dm')\
(vnc 1)(vncunused 0)(vncdisplay 17)(keymap 'ja')))\
-(device (vbd (dev 'hda:disk')(uname 'file:/root/foo.img')(mode
'w')))\
-(device (vbd (dev 'hdc:cdrom')(uname 'file:/root/boot.iso')(mode
'r')))\
+(device (vbd (dev 'hda:disk')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
+(device (vbd (dev 'hdc:cdrom')(uname 'file:/root/boot.iso')(mode
'r')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv-vncunused.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv-vncunused.sexpr
index 908ae94..3a81dbc 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv-vncunused.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv-vncunused.sexpr
@@ -4,7 +4,7 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)(acpi 1)\
(usb 1)(parallel none)(serial none)(device_model '/usr/lib64/xen/bin/qemu-dm')\
(vnc 1)(vncunused 1)(keymap 'ja')))(device (vbd (dev 'hda:disk')\
-(uname 'file:/root/foo.img')(mode 'w')))(device (vbd (dev
'hdc:cdrom')\
-(uname 'file:/root/boot.iso')(mode 'r')))\
+(uname 'file:/root/foo.img')(mode 'w')(bootable 0)))(device (vbd (dev
'hdc:cdrom')\
+(uname 'file:/root/boot.iso')(mode 'r')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-fv.sexpr
b/tests/xml2sexprdata/xml2sexpr-fv.sexpr
index 81fb92d..ec672f4 100644
--- a/tests/xml2sexprdata/xml2sexpr-fv.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-fv.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)\
(cdrom '/root/boot.iso')(acpi 1)(usb 1)(parallel none)(serial none)\
(device_model '/usr/lib64/xen/bin/qemu-dm')(vnc 1)))\
-(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')))\
+(device (vbd (dev 'ioemu:hda')(uname 'file:/root/foo.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1b:b1:47')(bridge 'xenbr0')(script
'vif-bridge')\
(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-net-bridged.sexpr
b/tests/xml2sexprdata/xml2sexpr-net-bridged.sexpr
index 0c0c62e..d0b849f 100644
--- a/tests/xml2sexprdata/xml2sexpr-net-bridged.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-net-bridged.sexpr
@@ -5,6 +5,6 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'file:/root/some.img')(mode 'w')))\
+(uname 'file:/root/some.img')(mode 'w')(bootable 0)))\
(device (vif (mac '00:11:22:33:44:55')(bridge 'xenbr2')\
(script 'vif-bridge'))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-net-e1000.sexpr
b/tests/xml2sexprdata/xml2sexpr-net-e1000.sexpr
index d95ed82..148efa0 100644
--- a/tests/xml2sexprdata/xml2sexpr-net-e1000.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-net-e1000.sexpr
@@ -5,6 +5,6 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'file:/root/some.img')(mode 'w')))\
+(uname 'file:/root/some.img')(mode 'w')(bootable 0)))\
(device (vif (mac '00:11:22:33:44:55')(bridge 'xenbr2')\
(script 'vif-bridge')(model 'e1000'))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-net-routed.sexpr
b/tests/xml2sexprdata/xml2sexpr-net-routed.sexpr
index 3430e31..1692b15 100644
--- a/tests/xml2sexprdata/xml2sexpr-net-routed.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-net-routed.sexpr
@@ -5,6 +5,6 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'file:/root/some.img')(mode 'w')))\
+(uname 'file:/root/some.img')(mode 'w')(bootable 0)))\
(device (vif (mac '00:11:22:33:44:55')(script 'vif-routed')\
(ip '172.14.5.6'))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-no-source-cdrom.sexpr
b/tests/xml2sexprdata/xml2sexpr-no-source-cdrom.sexpr
index eeebee3..b58c656 100644
--- a/tests/xml2sexprdata/xml2sexpr-no-source-cdrom.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-no-source-cdrom.sexpr
@@ -4,6 +4,6 @@
(image (hvm (kernel '/usr/lib/xen/boot/hvmloader')(vcpus 1)(boot c)(acpi 1)\
(apic 1)(pae 1)(usb 1)(parallel none)(serial none)\
(device_model '/usr/lib/xen/bin/qemu-dm')(vnc 1)(vncunused 0)(vncdisplay 6)))\
-(device (vbd (dev 'hda:disk')(uname 'phy:/dev/sda8')(mode
'w')))\
-(device (vbd (dev 'hdc:cdrom')(mode 'r')))\
+(device (vbd (dev 'hda:disk')(uname 'phy:/dev/sda8')(mode
'w')(bootable 0)))\
+(device (vbd (dev 'hdc:cdrom')(mode 'r')(bootable 0)))\
(device (vif (mac '00:16:3e:0a:7b:39')(model 'e1000')(type ioemu))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-pci-devs.sexpr
b/tests/xml2sexprdata/xml2sexpr-pci-devs.sexpr
index fdc48cf..fa724f2 100644
--- a/tests/xml2sexprdata/xml2sexpr-pci-devs.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-pci-devs.sexpr
@@ -5,6 +5,6 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'phy:/dev/MainVG/GuestLV')(mode 'w')))\
+(uname 'phy:/dev/MainVG/GuestLV')(mode 'w')(bootable 0)))\
(device (pci (dev (domain 0x0001)(bus 0x0c)(slot 0x1b)(func 0x2))\
(dev (domain 0x0000)(bus 0x01)(slot 0x13)(func 0x0)))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-pv-bootloader-cmdline.sexpr
b/tests/xml2sexprdata/xml2sexpr-pv-bootloader-cmdline.sexpr
index 236017e..e4e8f52 100644
--- a/tests/xml2sexprdata/xml2sexpr-pv-bootloader-cmdline.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-pv-bootloader-cmdline.sexpr
@@ -2,4 +2,4 @@
(uuid '596a5d21-71f4-8fb2-e068-e2386a5c413e')(bootloader
'/usr/bin/pygrub')\
(bootloader_args '-q')(on_poweroff 'destroy')(on_reboot
'destroy')\
(on_crash 'destroy')(image (linux (args 'xenfb.video=8,1280,1024')))\
-(device (vbd (dev 'xvda')(uname 'file:/root/some.img')(mode
'w'))))\
+(device (vbd (dev 'xvda')(uname 'file:/root/some.img')(mode
'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-pv-bootloader.sexpr
b/tests/xml2sexprdata/xml2sexpr-pv-bootloader.sexpr
index c11938e..5f67f79 100644
--- a/tests/xml2sexprdata/xml2sexpr-pv-bootloader.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-pv-bootloader.sexpr
@@ -2,4 +2,4 @@
(uuid '596a5d21-71f4-8fb2-e068-e2386a5c413e')(bootloader
'/usr/bin/pypxeboot')\
(bootloader_args 'mac=AA:00:86:e2:35:72')(on_poweroff 'destroy')\
(on_reboot 'destroy')(on_crash 'destroy')(device (vbd (dev
'xvda')\
-(uname 'file:/root/some.img')(mode 'w'))))\
+(uname 'file:/root/some.img')(mode 'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-pv-localtime.sexpr
b/tests/xml2sexprdata/xml2sexpr-pv-localtime.sexpr
index 589bbdf..deb4389 100644
--- a/tests/xml2sexprdata/xml2sexpr-pv-localtime.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-pv-localtime.sexpr
@@ -1,6 +1,6 @@
(vm (name 'rhel5')(memory 175)(maxmem 385)(vcpus 1)\
(uuid '4f77abd2-3019-58e8-3bab-6fbf2118f880')(bootloader
'/usr/bin/pygrub')\
(on_poweroff 'destroy')(on_reboot 'restart')(on_crash
'restart')(localtime 1)\
-(device (tap (dev 'xvda')(uname 'tap:aio:/xen/rhel5.img')(mode
'w')))\
+(device (tap (dev 'xvda')(uname 'tap:aio:/xen/rhel5.img')(mode
'w')(bootable 0)))\
(device (vif (mac '00:16:3e:1d:06:15')(bridge 'xenbr0')\
(script 'vif-bridge'))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-pv-vcpus.sexpr
b/tests/xml2sexprdata/xml2sexpr-pv-vcpus.sexpr
index df854ca..f250d11 100644
--- a/tests/xml2sexprdata/xml2sexpr-pv-vcpus.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-pv-vcpus.sexpr
@@ -5,4 +5,4 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'file:/root/some.img')(mode 'w'))))\
+(uname 'file:/root/some.img')(mode 'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-pv-vfb-new-auto.sexpr
b/tests/xml2sexprdata/xml2sexpr-pv-vfb-new-auto.sexpr
index 5eb0133..5125954 100644
--- a/tests/xml2sexprdata/xml2sexpr-pv-vfb-new-auto.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-pv-vfb-new-auto.sexpr
@@ -5,6 +5,6 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'file:/root/some.img')(mode 'w')))(device (vkbd))\
+(uname 'file:/root/some.img')(mode 'w')(bootable 0)))(device (vkbd))\
(device (vfb (type vnc)(vncunused 1)(vnclisten '127.0.0.1')\
(vncpasswd '123456')(keymap 'ja'))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-pv-vfb-new.sexpr
b/tests/xml2sexprdata/xml2sexpr-pv-vfb-new.sexpr
index c74098f..0b5f464 100644
--- a/tests/xml2sexprdata/xml2sexpr-pv-vfb-new.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-pv-vfb-new.sexpr
@@ -5,6 +5,6 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'file:/root/some.img')(mode 'w')))(device (vkbd))\
+(uname 'file:/root/some.img')(mode 'w')(bootable 0)))(device (vkbd))\
(device (vfb (type vnc)(vncunused 0)(vncdisplay 6)(vnclisten '127.0.0.1')\
(vncpasswd '123456')(keymap 'ja'))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-pv-vfb-orig.sexpr
b/tests/xml2sexprdata/xml2sexpr-pv-vfb-orig.sexpr
index 1e22b83..3924035 100644
--- a/tests/xml2sexprdata/xml2sexpr-pv-vfb-orig.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-pv-vfb-orig.sexpr
@@ -6,4 +6,4 @@
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')(vnc 1)(vncunused 0)(vncdisplay 6)\
(vnclisten '127.0.0.1')(vncpasswd '123456')(keymap 'ja')))\
-(device (vbd (dev 'xvda')(uname 'file:/root/some.img')(mode
'w'))))\
+(device (vbd (dev 'xvda')(uname 'file:/root/some.img')(mode
'w')(bootable 0))))\
diff --git a/tests/xml2sexprdata/xml2sexpr-pv.sexpr
b/tests/xml2sexprdata/xml2sexpr-pv.sexpr
index dac0aa3..0e416db 100644
--- a/tests/xml2sexprdata/xml2sexpr-pv.sexpr
+++ b/tests/xml2sexprdata/xml2sexpr-pv.sexpr
@@ -5,4 +5,4 @@
(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')\
(args '
method=http://download.fedora.devel.redhat.com/pub/fedora/linux/\
core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')\
-(uname 'file:/root/some.img')(mode 'w'))))\
+(uname 'file:/root/some.img')(mode 'w')(bootable 0))))\
--
1.7.1