[libvirt] [PATCH 3/9] conf: Parse and for the tray attribute
Daniel Veillard
veillard at redhat.com
Fri Mar 9 11:01:56 UTC 2012
On Mon, Mar 05, 2012 at 06:25:41PM +0800, Osier Yang wrote:
> The "tray" is only allowed for removable disks, i.e. CDROM and
> Floppy disks.
>
> As the value for "tray" defaults to "closed", lots of tests are
> updated to include "tray='closed'" in the disk target XML.
I would take that as an indication that "tray='closed'"
should just be omitted in output and assumed on input
> src/conf/domain_conf.c | 33 +++++++++++++++++++-
> src/conf/domain_conf.h | 9 +++++
> tests/qemuxml2argvdata/qemuxml2argv-boot-cdrom.xml | 2 +-
> .../qemuxml2argv-boot-complex-bootindex.xml | 6 ++--
> .../qemuxml2argvdata/qemuxml2argv-boot-complex.xml | 6 ++--
> .../qemuxml2argvdata/qemuxml2argv-boot-floppy.xml | 2 +-
> ...uxml2argv-boot-menu-disable-drive-bootindex.xml | 2 +-
> .../qemuxml2argv-boot-menu-disable-drive.xml | 2 +-
> .../qemuxml2argv-boot-menu-disable.xml | 2 +-
> .../qemuxml2argv-boot-menu-enable.xml | 2 +-
> tests/qemuxml2argvdata/qemuxml2argv-boot-multi.xml | 2 +-
> tests/qemuxml2argvdata/qemuxml2argv-boot-order.xml | 4 +-
> tests/qemuxml2argvdata/qemuxml2argv-bootloader.xml | 2 +-
> tests/qemuxml2argvdata/qemuxml2argv-disk-aio.xml | 2 +-
> .../qemuxml2argv-disk-cdrom-empty.xml | 2 +-
> tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom.xml | 2 +-
> .../qemuxml2argv-disk-copy_on_read.xml | 2 +-
> .../qemuxml2argv-disk-drive-boot-cdrom.xml | 2 +-
> .../qemuxml2argv-disk-drive-boot-disk.xml | 2 +-
> .../qemuxml2argv-disk-drive-cache-directsync.xml | 2 +-
> .../qemuxml2argv-disk-drive-cache-unsafe.xml | 2 +-
> .../qemuxml2argv-disk-drive-cache-v1-none.xml | 2 +-
> .../qemuxml2argv-disk-drive-cache-v1-wb.xml | 2 +-
> .../qemuxml2argv-disk-drive-cache-v1-wt.xml | 2 +-
> .../qemuxml2argv-disk-drive-cache-v2-none.xml | 2 +-
> .../qemuxml2argv-disk-drive-cache-v2-wb.xml | 2 +-
> .../qemuxml2argv-disk-drive-cache-v2-wt.xml | 2 +-
> ...muxml2argv-disk-drive-error-policy-enospace.xml | 2 +-
> .../qemuxml2argv-disk-drive-error-policy-stop.xml | 2 +-
> ...rgv-disk-drive-error-policy-wreport-rignore.xml | 2 +-
> .../qemuxml2argv-disk-drive-fmt-qcow.xml | 2 +-
> .../qemuxml2argv-disk-drive-no-boot.xml | 4 +-
> .../qemuxml2argv-disk-drive-readonly-disk.xml | 2 +-
> .../qemuxml2argv-disk-drive-readonly-no-device.xml | 2 +-
> .../qemuxml2argv-disk-drive-shared.xml | 2 +-
> .../qemuxml2argvdata/qemuxml2argv-disk-floppy.xml | 4 +-
> .../qemuxml2argv-disk-ioeventfd.xml | 2 +-
> tests/qemuxml2argvdata/qemuxml2argv-disk-order.xml | 2 +-
> .../qemuxml2argv-disk-snapshot.xml | 2 +-
> .../qemuxml2argvdata/qemuxml2argv-disk-virtio.xml | 2 +-
> .../qemuxml2argvdata/qemuxml2argv-disk-xenvbd.xml | 2 +-
> tests/qemuxml2argvdata/qemuxml2argv-event_idx.xml | 2 +-
> .../qemuxml2argv-floppy-drive-fat.xml | 2 +-
> .../qemuxml2argv-graphics-spice-timeout.xml | 2 +-
> tests/qemuxml2argvdata/qemuxml2argv-lease.xml | 2 +-
> .../qemuxml2argv-net-bandwidth.xml | 2 +-
> .../qemuxml2xmlout-graphics-spice-timeout.xml | 2 +-
> tests/vmx2xmldata/vmx2xml-cdrom-ide-device.xml | 2 +-
> tests/vmx2xmldata/vmx2xml-cdrom-ide-file.xml | 2 +-
> tests/vmx2xmldata/vmx2xml-cdrom-scsi-device.xml | 2 +-
> tests/vmx2xmldata/vmx2xml-cdrom-scsi-file.xml | 2 +-
> tests/vmx2xmldata/vmx2xml-esx-in-the-wild-2.xml | 8 ++--
> tests/vmx2xmldata/vmx2xml-esx-in-the-wild-3.xml | 4 +-
> tests/vmx2xmldata/vmx2xml-esx-in-the-wild-5.xml | 2 +-
> tests/vmx2xmldata/vmx2xml-esx-in-the-wild-6.xml | 2 +-
> tests/vmx2xmldata/vmx2xml-floppy-device.xml | 2 +-
> tests/vmx2xmldata/vmx2xml-floppy-file.xml | 2 +-
> tests/vmx2xmldata/vmx2xml-ws-in-the-wild-1.xml | 2 +-
> tests/vmx2xmldata/vmx2xml-ws-in-the-wild-2.xml | 2 +-
> 59 files changed, 109 insertions(+), 69 deletions(-)
>
> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
> index f9654f1..f359f8f 100644
> --- a/src/conf/domain_conf.c
> +++ b/src/conf/domain_conf.c
> @@ -613,6 +613,10 @@ VIR_ENUM_IMPL(virDomainStartupPolicy, VIR_DOMAIN_STARTUP_POLICY_LAST,
> "requisite",
> "optional");
>
> +VIR_ENUM_IMPL(virDomainDiskTray, VIR_DOMAIN_DISK_TRAY_LAST,
> + "closed",
> + "open");
> +
> #define virDomainReportError(code, ...) \
> virReportErrorHelper(VIR_FROM_DOMAIN, code, __FILE__, \
> __FUNCTION__, __LINE__, __VA_ARGS__)
> @@ -2894,6 +2898,7 @@ virDomainDiskDefParseXML(virCapsPtr caps,
> char *authUsage = NULL;
> char *authUUID = NULL;
> char *usageType = NULL;
> + char *tray = NULL;
>
> if (VIR_ALLOC(def) < 0) {
> virReportOOMError();
> @@ -3002,6 +3007,7 @@ virDomainDiskDefParseXML(virCapsPtr caps,
> (xmlStrEqual(cur->name, BAD_CAST "target"))) {
> target = virXMLPropString(cur, "dev");
> bus = virXMLPropString(cur, "bus");
> + tray = virXMLPropString(cur, "tray");
>
> /* HACK: Work around for compat with Xen
> * driver in previous libvirt releases */
> @@ -3271,6 +3277,25 @@ virDomainDiskDefParseXML(virCapsPtr caps,
> }
> }
>
> + if (tray) {
> + if ((def->tray_status = virDomainDiskTrayTypeFromString(tray)) < 0) {
> + virDomainReportError(VIR_ERR_XML_ERROR,
> + _("unknown disk tray status '%s'"), tray);
> + goto error;
> + }
> +
> + if (def->device != VIR_DOMAIN_DISK_DEVICE_FLOPPY &&
> + def->device != VIR_DOMAIN_DISK_DEVICE_CDROM) {
> + virDomainReportError(VIR_ERR_XML_ERROR, "%s",
> + _("tray is only valid for cdrom and floppy"));
> + goto error;
> + }
> + } else {
> + if (def->device == VIR_DOMAIN_DISK_DEVICE_FLOPPY ||
> + def->device == VIR_DOMAIN_DISK_DEVICE_CDROM)
> + def->tray_status = VIR_DOMAIN_DISK_TRAY_CLOSED;
> + }
> +
> if (def->device == VIR_DOMAIN_DISK_DEVICE_FLOPPY &&
> def->bus != VIR_DOMAIN_DISK_BUS_FDC) {
> virDomainReportError(VIR_ERR_INTERNAL_ERROR,
I don't see tray being freed here, so that sounds like a leak
> @@ -10228,8 +10253,14 @@ virDomainDiskDefFormat(virBufferPtr buf,
> }
> }
>
> - virBufferAsprintf(buf, " <target dev='%s' bus='%s'/>\n",
> + virBufferAsprintf(buf, " <target dev='%s' bus='%s'",
> def->dst, bus);
> + if (def->device == VIR_DOMAIN_DISK_DEVICE_FLOPPY ||
> + def->device == VIR_DOMAIN_DISK_DEVICE_CDROM)
I would make this conditional to
if (def->tray_status != VIR_DOMAIN_DISK_TRAY_CLOSED)
to avoid extra default data...
> + virBufferAsprintf(buf, " tray='%s'/>\n",
> + virDomainDiskTrayTypeToString(def->tray_status));
> + else
> + virBufferAddLit(buf, "/>\n");
>
> /*disk I/O throttling*/
> if (def->blkdeviotune.total_bytes_sec ||
> diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
> index d98a551..6fa06c7 100644
> --- a/src/conf/domain_conf.h
> +++ b/src/conf/domain_conf.h
> @@ -306,6 +306,13 @@ enum virDomainDiskProtocol {
> VIR_DOMAIN_DISK_PROTOCOL_LAST
> };
>
> +enum virDomainDiskTray {
> + VIR_DOMAIN_DISK_TRAY_CLOSED,
> + VIR_DOMAIN_DISK_TRAY_OPEN,
> +
> + VIR_DOMAIN_DISK_TRAY_LAST
> +};
> +
> typedef struct _virDomainDiskHostDef virDomainDiskHostDef;
> typedef virDomainDiskHostDef *virDomainDiskHostDefPtr;
> struct _virDomainDiskHostDef {
> @@ -398,6 +405,7 @@ struct _virDomainDiskDef {
> char *src;
> virSecurityDeviceLabelDefPtr seclabel;
> char *dst;
> + int tray_status;
> int protocol;
> int nhosts;
> virDomainDiskHostDefPtr hosts;
> @@ -2016,6 +2024,7 @@ VIR_ENUM_DECL(virDomainDiskProtocol)
> VIR_ENUM_DECL(virDomainDiskIo)
> VIR_ENUM_DECL(virDomainDiskSecretType)
> VIR_ENUM_DECL(virDomainDiskSnapshot)
> +VIR_ENUM_DECL(virDomainDiskTray)
> VIR_ENUM_DECL(virDomainIoEventFd)
> VIR_ENUM_DECL(virDomainVirtioEventIdx)
> VIR_ENUM_DECL(virDomainDiskCopyOnRead)
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-boot-cdrom.xml b/tests/qemuxml2argvdata/qemuxml2argv-boot-cdrom.xml
> index 44a30de..9086528 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-boot-cdrom.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-boot-cdrom.xml
> @@ -16,7 +16,7 @@
> <emulator>/usr/bin/qemu</emulator>
> <disk type='block' device='cdrom'>
> <source dev='/dev/cdrom'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-boot-complex-bootindex.xml b/tests/qemuxml2argvdata/qemuxml2argv-boot-complex-bootindex.xml
> index 8ee42e7..646aa4c 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-boot-complex-bootindex.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-boot-complex-bootindex.xml
> @@ -37,17 +37,17 @@
> </disk>
> <disk type='block' device='cdrom'>
> <source dev='/dev/HostVG/hdc'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> <disk type='block' device='floppy'>
> <source dev='/dev/fd1'/>
> - <target dev='fdb' bus='fdc'/>
> + <target dev='fdb' bus='fdc' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='1'/>
> </disk>
> <disk type='block' device='floppy'>
> <source dev='/dev/fd0'/>
> - <target dev='fda' bus='fdc'/>
> + <target dev='fda' bus='fdc' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <controller type='usb' index='0'/>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-boot-complex.xml b/tests/qemuxml2argvdata/qemuxml2argv-boot-complex.xml
> index 8ee42e7..646aa4c 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-boot-complex.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-boot-complex.xml
> @@ -37,17 +37,17 @@
> </disk>
> <disk type='block' device='cdrom'>
> <source dev='/dev/HostVG/hdc'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> <disk type='block' device='floppy'>
> <source dev='/dev/fd1'/>
> - <target dev='fdb' bus='fdc'/>
> + <target dev='fdb' bus='fdc' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='1'/>
> </disk>
> <disk type='block' device='floppy'>
> <source dev='/dev/fd0'/>
> - <target dev='fda' bus='fdc'/>
> + <target dev='fda' bus='fdc' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <controller type='usb' index='0'/>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-boot-floppy.xml b/tests/qemuxml2argvdata/qemuxml2argv-boot-floppy.xml
> index f55ee2c..e1566c3 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-boot-floppy.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-boot-floppy.xml
> @@ -21,7 +21,7 @@
> </disk>
> <disk type='file' device='floppy'>
> <source file='/tmp/firmware.img'/>
> - <target dev='fda' bus='fdc'/>
> + <target dev='fda' bus='fdc' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <controller type='usb' index='0'/>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable-drive-bootindex.xml b/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable-drive-bootindex.xml
> index 28b1b68..82a04c8 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable-drive-bootindex.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable-drive-bootindex.xml
> @@ -17,7 +17,7 @@
> <emulator>/usr/bin/qemu</emulator>
> <disk type='block' device='cdrom'>
> <source dev='/dev/cdrom'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable-drive.xml b/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable-drive.xml
> index 28b1b68..82a04c8 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable-drive.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable-drive.xml
> @@ -17,7 +17,7 @@
> <emulator>/usr/bin/qemu</emulator>
> <disk type='block' device='cdrom'>
> <source dev='/dev/cdrom'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable.xml b/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable.xml
> index 28b1b68..82a04c8 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable.xml
> @@ -17,7 +17,7 @@
> <emulator>/usr/bin/qemu</emulator>
> <disk type='block' device='cdrom'>
> <source dev='/dev/cdrom'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-enable.xml b/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-enable.xml
> index 7847a99..2046881 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-enable.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-boot-menu-enable.xml
> @@ -17,7 +17,7 @@
> <emulator>/usr/bin/qemu</emulator>
> <disk type='block' device='cdrom'>
> <source dev='/dev/cdrom'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-boot-multi.xml b/tests/qemuxml2argvdata/qemuxml2argv-boot-multi.xml
> index 85e6d91..07b7a85 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-boot-multi.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-boot-multi.xml
> @@ -20,7 +20,7 @@
> <emulator>/usr/bin/qemu</emulator>
> <disk type='block' device='cdrom'>
> <source dev='/dev/cdrom'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-boot-order.xml b/tests/qemuxml2argvdata/qemuxml2argv-boot-order.xml
> index 69ba3c0..e805064 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-boot-order.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-boot-order.xml
> @@ -20,7 +20,7 @@
> </disk>
> <disk type='file' device='cdrom'>
> <source file='/root/boot.iso'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <boot order='1'/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> @@ -36,7 +36,7 @@
> <disk type='file' device='floppy'>
> <driver name='qemu' type='raw'/>
> <source file='/dev/null'/>
> - <target dev='fdb' bus='fdc'/>
> + <target dev='fdb' bus='fdc' tray='closed'/>
> <boot order='4'/>
> <address type='drive' controller='0' bus='0' target='0' unit='1'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-bootloader.xml b/tests/qemuxml2argvdata/qemuxml2argv-bootloader.xml
> index be07426..811e801 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-bootloader.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-bootloader.xml
> @@ -16,7 +16,7 @@
> <emulator>/usr/bin/xenner</emulator>
> <disk type='block' device='cdrom'>
> <source dev='/dev/cdrom'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-aio.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-aio.xml
> index f1c9a42..9e6b816 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-aio.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-aio.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw' io='threads'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-empty.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-empty.xml
> index 8fdcb1d..85c163d 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-empty.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-empty.xml
> @@ -20,7 +20,7 @@
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <disk type='file' device='cdrom'>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom.xml
> index ab09ed6..4378cf8 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom.xml
> @@ -21,7 +21,7 @@
> </disk>
> <disk type='file' device='cdrom'>
> <source file='/root/boot.iso'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.xml
> index fb0bf2b..84df929 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.xml
> @@ -23,7 +23,7 @@
> <disk type='file' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source file='/var/lib/libvirt/Fedora-14-x86_64-Live-KDE.iso'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-boot-cdrom.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-boot-cdrom.xml
> index dda54f8..fbc0b09 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-boot-cdrom.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-boot-cdrom.xml
> @@ -21,7 +21,7 @@
> </disk>
> <disk type='block' device='cdrom'>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> <controller type='usb' index='0'/>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-boot-disk.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-boot-disk.xml
> index cff1a42..36e2166 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-boot-disk.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-boot-disk.xml
> @@ -21,7 +21,7 @@
> </disk>
> <disk type='block' device='cdrom'>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> <controller type='usb' index='0'/>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-directsync.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-directsync.xml
> index d32d569..6a58f68 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-directsync.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-directsync.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-unsafe.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-unsafe.xml
> index f2362af..fd77bac 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-unsafe.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-unsafe.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-none.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-none.xml
> index 078e2e7..d6facdb 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-none.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-none.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wb.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wb.xml
> index 1e575ed..262be15 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wb.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wb.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wt.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wt.xml
> index ffa8aba..f58b352 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wt.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wt.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-none.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-none.xml
> index 4c33b5a..5045d70 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-none.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-none.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wb.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wb.xml
> index cad8257..c093f07 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wb.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wb.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wt.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wt.xml
> index 1af9a9f..16b77c5 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wt.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wt.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-error-policy-enospace.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-error-policy-enospace.xml
> index e0182d6..bef1c7c 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-error-policy-enospace.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-error-policy-enospace.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-error-policy-stop.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-error-policy-stop.xml
> index a1d55f9..77c4712 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-error-policy-stop.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-error-policy-stop.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-error-policy-wreport-rignore.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-error-policy-wreport-rignore.xml
> index b52d397..b09f01f 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-error-policy-wreport-rignore.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-error-policy-wreport-rignore.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-fmt-qcow.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-fmt-qcow.xml
> index 599993c..28ed7cd 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-fmt-qcow.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-fmt-qcow.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-no-boot.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-no-boot.xml
> index 2ce27a5..e6100ea 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-no-boot.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-no-boot.xml
> @@ -23,12 +23,12 @@
> </disk>
> <disk type='block' device='cdrom'>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> <disk type='block' device='floppy'>
> <source dev='/dev/fd0'/>
> - <target dev='fda' bus='fdc'/>
> + <target dev='fda' bus='fdc' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <controller type='usb' index='0'/>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-readonly-disk.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-readonly-disk.xml
> index a3ecd9c..9c7515f 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-readonly-disk.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-readonly-disk.xml
> @@ -21,7 +21,7 @@
> </disk>
> <disk type='block' device='cdrom'>
> <source dev='/dev/sr0'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-readonly-no-device.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-readonly-no-device.xml
> index a3ecd9c..9c7515f 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-readonly-no-device.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-readonly-no-device.xml
> @@ -21,7 +21,7 @@
> </disk>
> <disk type='block' device='cdrom'>
> <source dev='/dev/sr0'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-shared.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-shared.xml
> index 674bbed..2b91830 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-shared.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-drive-shared.xml
> @@ -25,7 +25,7 @@
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-floppy.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-floppy.xml
> index 68e4f06..e2e85db 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-floppy.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-floppy.xml
> @@ -21,12 +21,12 @@
> </disk>
> <disk type='block' device='floppy'>
> <source dev='/dev/fd0'/>
> - <target dev='fda' bus='fdc'/>
> + <target dev='fda' bus='fdc' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <disk type='file' device='floppy'>
> <source file='/tmp/firmware.img'/>
> - <target dev='fdb' bus='fdc'/>
> + <target dev='fdb' bus='fdc' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='1'/>
> </disk>
> <controller type='usb' index='0'/>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.xml
> index 00edada..4e55804 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.xml
> @@ -23,7 +23,7 @@
> <disk type='file' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source file='/var/lib/libvirt/Fedora-14-x86_64-Live-KDE.iso'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-order.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-order.xml
> index d89e57b..692290d 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-order.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-order.xml
> @@ -16,7 +16,7 @@
> <emulator>/usr/bin/qemu</emulator>
> <disk type='block' device='cdrom'>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> </disk>
> <disk type='file' device='disk'>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-snapshot.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-snapshot.xml
> index 0544c05..3aa201d 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-snapshot.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-snapshot.xml
> @@ -23,7 +23,7 @@
> <disk type='block' device='cdrom' snapshot='no'>
> <driver name='qemu' type='raw'/>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-virtio.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-virtio.xml
> index 02d1fd3..a53899a 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-virtio.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-virtio.xml
> @@ -21,7 +21,7 @@
> </disk>
> <disk type='block' device='cdrom'>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-xenvbd.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-xenvbd.xml
> index 9606a52..9d1ec22 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-xenvbd.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-xenvbd.xml
> @@ -21,7 +21,7 @@
> </disk>
> <disk type='block' device='cdrom'>
> <source dev='/dev/HostVG/QEMUGuest2'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-event_idx.xml b/tests/qemuxml2argvdata/qemuxml2argv-event_idx.xml
> index a8131b9..567f4d6 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-event_idx.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-event_idx.xml
> @@ -25,7 +25,7 @@
> <disk type='file' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source file='/var/lib/libvirt/Fedora-14-x86_64-Live-KDE.iso'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-floppy-drive-fat.xml b/tests/qemuxml2argvdata/qemuxml2argv-floppy-drive-fat.xml
> index 48bcdb7..29c4492 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-floppy-drive-fat.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-floppy-drive-fat.xml
> @@ -17,7 +17,7 @@
> <disk type='dir' device='floppy'>
> <driver name='qemu' type='fat'/>
> <source dir='/var/somefiles'/>
> - <target dev='fda' bus='fdc'/>
> + <target dev='fda' bus='fdc' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml
> index 17fb06c..505801a 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml
> @@ -48,7 +48,7 @@
> <disk type='file' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source file='/var/lib/libvirt/Fedora-14-x86_64-Live-KDE.iso'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-lease.xml b/tests/qemuxml2argvdata/qemuxml2argv-lease.xml
> index d42239c..d66af2f 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-lease.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-lease.xml
> @@ -21,7 +21,7 @@
> </disk>
> <disk type='file' device='cdrom'>
> <source file='/root/boot.iso'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-net-bandwidth.xml b/tests/qemuxml2argvdata/qemuxml2argv-net-bandwidth.xml
> index 4b2e70c..ea698d0 100644
> --- a/tests/qemuxml2argvdata/qemuxml2argv-net-bandwidth.xml
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-net-bandwidth.xml
> @@ -30,7 +30,7 @@
> <disk type='file' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source file='/home/zippy/tmp/Fedora-14-x86_64-Live-KDE.iso'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-timeout.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-timeout.xml
> index 16efb69..b2d6bfd 100644
> --- a/tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-timeout.xml
> +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-timeout.xml
> @@ -48,7 +48,7 @@
> <disk type='file' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source file='/var/lib/libvirt/Fedora-14-x86_64-Live-KDE.iso'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> diff --git a/tests/vmx2xmldata/vmx2xml-cdrom-ide-device.xml b/tests/vmx2xmldata/vmx2xml-cdrom-ide-device.xml
> index 6cbdfe9..50712a6 100644
> --- a/tests/vmx2xmldata/vmx2xml-cdrom-ide-device.xml
> +++ b/tests/vmx2xmldata/vmx2xml-cdrom-ide-device.xml
> @@ -13,7 +13,7 @@
> <devices>
> <disk type='block' device='cdrom'>
> <source dev='/dev/scd0'/>
> - <target dev='hda' bus='ide'/>
> + <target dev='hda' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <controller type='ide' index='0'/>
> diff --git a/tests/vmx2xmldata/vmx2xml-cdrom-ide-file.xml b/tests/vmx2xmldata/vmx2xml-cdrom-ide-file.xml
> index 3bdb70b..de71ba6 100644
> --- a/tests/vmx2xmldata/vmx2xml-cdrom-ide-file.xml
> +++ b/tests/vmx2xmldata/vmx2xml-cdrom-ide-file.xml
> @@ -13,7 +13,7 @@
> <devices>
> <disk type='file' device='cdrom'>
> <source file='[datastore] directory/cdrom.iso'/>
> - <target dev='hda' bus='ide'/>
> + <target dev='hda' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <controller type='ide' index='0'/>
> diff --git a/tests/vmx2xmldata/vmx2xml-cdrom-scsi-device.xml b/tests/vmx2xmldata/vmx2xml-cdrom-scsi-device.xml
> index 00fbf4e..dafd4fb 100644
> --- a/tests/vmx2xmldata/vmx2xml-cdrom-scsi-device.xml
> +++ b/tests/vmx2xmldata/vmx2xml-cdrom-scsi-device.xml
> @@ -13,7 +13,7 @@
> <devices>
> <disk type='block' device='cdrom'>
> <source dev='/dev/scd0'/>
> - <target dev='sda' bus='scsi'/>
> + <target dev='sda' bus='scsi' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <controller type='scsi' index='0'/>
> diff --git a/tests/vmx2xmldata/vmx2xml-cdrom-scsi-file.xml b/tests/vmx2xmldata/vmx2xml-cdrom-scsi-file.xml
> index e8f2e9f..ca7ca1c 100644
> --- a/tests/vmx2xmldata/vmx2xml-cdrom-scsi-file.xml
> +++ b/tests/vmx2xmldata/vmx2xml-cdrom-scsi-file.xml
> @@ -13,7 +13,7 @@
> <devices>
> <disk type='file' device='cdrom'>
> <source file='[datastore] directory/cdrom.iso'/>
> - <target dev='sda' bus='scsi'/>
> + <target dev='sda' bus='scsi' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <controller type='scsi' index='0'/>
> diff --git a/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-2.xml b/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-2.xml
> index 2e07963..e98bb58 100644
> --- a/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-2.xml
> +++ b/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-2.xml
> @@ -20,17 +20,17 @@
> </disk>
> <disk type='file' device='cdrom'>
> <source file='[datastore] directory/Debian1-cdrom.iso'/>
> - <target dev='sdp' bus='scsi'/>
> + <target dev='sdp' bus='scsi' tray='closed'/>
> <address type='drive' controller='1' bus='0' target='0' unit='0'/>
> </disk>
> <disk type='file' device='cdrom'>
> <source file='/vmimages/tools-isoimages/linux.iso'/>
> - <target dev='hda' bus='ide'/>
> + <target dev='hda' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <disk type='block' device='cdrom'>
> <source dev='/dev/scd0'/>
> - <target dev='hdb' bus='ide'/>
> + <target dev='hdb' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='1'/>
> </disk>
> <disk type='file' device='disk'>
> @@ -40,7 +40,7 @@
> </disk>
> <disk type='block' device='floppy'>
> <source dev='/dev/fd0'/>
> - <target dev='fda' bus='fdc'/>
> + <target dev='fda' bus='fdc' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <controller type='scsi' index='0' model='lsilogic'/>
> diff --git a/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-3.xml b/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-3.xml
> index 0bc8eed..d35553f 100644
> --- a/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-3.xml
> +++ b/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-3.xml
> @@ -19,12 +19,12 @@
> </disk>
> <disk type='file' device='cdrom'>
> <source file='[498076b2-02796c1a-ef5b-000ae484a6a3] Isos/debian-testing-amd64-netinst.iso'/>
> - <target dev='hda' bus='ide'/>
> + <target dev='hda' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <disk type='file' device='floppy'>
> <source file='[498076b2-02796c1a-ef5b-000ae484a6a3] Debian2/dummy.flp'/>
> - <target dev='fdb' bus='fdc'/>
> + <target dev='fdb' bus='fdc' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='1'/>
> </disk>
> <controller type='scsi' index='0' model='lsilogic'/>
> diff --git a/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-5.xml b/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-5.xml
> index ee23120..98faa9b 100644
> --- a/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-5.xml
> +++ b/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-5.xml
> @@ -26,7 +26,7 @@
> </disk>
> <disk type='file' device='cdrom'>
> <source file='[4af0231d-1eff559a-6369-0024e84773b6] isos/CentOS-5.5-x86_64-bin-DVD-1of2.iso'/>
> - <target dev='hda' bus='ide'/>
> + <target dev='hda' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <controller type='scsi' index='0' model='lsilogic'/>
> diff --git a/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-6.xml b/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-6.xml
> index 227308b..ec6a035 100644
> --- a/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-6.xml
> +++ b/tests/vmx2xmldata/vmx2xml-esx-in-the-wild-6.xml
> @@ -19,7 +19,7 @@
> </disk>
> <disk type='file' device='cdrom'>
> <source file='/usr/lib/vmware/isoimages/linux.iso'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> <controller type='scsi' index='0' model='vmpvscsi'/>
> diff --git a/tests/vmx2xmldata/vmx2xml-floppy-device.xml b/tests/vmx2xmldata/vmx2xml-floppy-device.xml
> index 8aef9c0..d6f3bab 100644
> --- a/tests/vmx2xmldata/vmx2xml-floppy-device.xml
> +++ b/tests/vmx2xmldata/vmx2xml-floppy-device.xml
> @@ -13,7 +13,7 @@
> <devices>
> <disk type='block' device='floppy'>
> <source dev='/dev/fd0'/>
> - <target dev='fda' bus='fdc'/>
> + <target dev='fda' bus='fdc' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <controller type='fdc' index='0'/>
> diff --git a/tests/vmx2xmldata/vmx2xml-floppy-file.xml b/tests/vmx2xmldata/vmx2xml-floppy-file.xml
> index c36e3f0..941118e 100644
> --- a/tests/vmx2xmldata/vmx2xml-floppy-file.xml
> +++ b/tests/vmx2xmldata/vmx2xml-floppy-file.xml
> @@ -13,7 +13,7 @@
> <devices>
> <disk type='file' device='floppy'>
> <source file='[datastore] directory/floppy.flp'/>
> - <target dev='fda' bus='fdc'/>
> + <target dev='fda' bus='fdc' tray='closed'/>
> <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> </disk>
> <controller type='fdc' index='0'/>
> diff --git a/tests/vmx2xmldata/vmx2xml-ws-in-the-wild-1.xml b/tests/vmx2xmldata/vmx2xml-ws-in-the-wild-1.xml
> index 4c958ae..0081adf 100644
> --- a/tests/vmx2xmldata/vmx2xml-ws-in-the-wild-1.xml
> +++ b/tests/vmx2xmldata/vmx2xml-ws-in-the-wild-1.xml
> @@ -19,7 +19,7 @@
> </disk>
> <disk type='file' device='cdrom'>
> <source file='/usr/lib/vmware/isoimages/linux.iso'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> <controller type='scsi' index='0' model='lsilogic'/>
> diff --git a/tests/vmx2xmldata/vmx2xml-ws-in-the-wild-2.xml b/tests/vmx2xmldata/vmx2xml-ws-in-the-wild-2.xml
> index 0501a45..28753a2 100644
> --- a/tests/vmx2xmldata/vmx2xml-ws-in-the-wild-2.xml
> +++ b/tests/vmx2xmldata/vmx2xml-ws-in-the-wild-2.xml
> @@ -19,7 +19,7 @@
> </disk>
> <disk type='file' device='cdrom'>
> <source file='/usr/lib/vmware/isoimages/linux.iso'/>
> - <target dev='hdc' bus='ide'/>
> + <target dev='hdc' bus='ide' tray='closed'/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> <controller type='scsi' index='0' model='lsilogic'/>
I'm not 100% sure what is the best approach but I would avoid
putting tray='closed' systematically on output.
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/
daniel at veillard.com | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library http://libvirt.org/
More information about the libvir-list
mailing list