If a special cache strategy for a disk has been specified in a domain
definition, but no driverName has been set, virDomainGetXMLDesc will not
include the <driver> tag at all.
This patch makes sure that the <driver> tag is included if any of the
settings it can contain has been set.
Signed-off-by: Soren Hansen <soren(a)linux2go.dk>
---
src/conf/domain_conf.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 96ba0b0..56c5239 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -4718,8 +4718,10 @@ virDomainDiskDefFormat(virBufferPtr buf,
" <disk type='%s'
device='%s'>\n",
type, device);
- if (def->driverName) {
- virBufferVSprintf(buf, " <driver name='%s'",
def->driverName);
+ if (def->driverName || def->driverType || def->cachemode) {
+ virBufferVSprintf(buf, " <driver");
+ if (def->driverName)
+ virBufferVSprintf(buf, " name='%s'", def->driverName);
if (def->driverType)
virBufferVSprintf(buf, " type='%s'", def->driverType);
if (def->cachemode)
--
1.7.0