{
const char *driver = "file";
const char *iomode = NULL;
+ const char *prManagerAlias = NULL;
virJSONValuePtr ret = NULL;
if (src->iomode != VIR_DOMAIN_DISK_IO_DEFAULT)
driver = "host_device";
}
+ if (src->pr)
+ prManagerAlias = src->pr->mgralias;
+
ignore_value(virJSONValueObjectCreate(&ret,
"s:driver", driver,
"s:filename", src->path,
"S:aio", iomode,
+ "S:pr-manager", prManagerAlias,
NULL) < 0);
return ret;
}
TEST_DISK_TO_JSON("dir-fat-cache");
TEST_DISK_TO_JSON("block-raw-noopts");
+ TEST_DISK_TO_JSON("block-raw-reservations");
cleanup:
virHashFree(diskxmljsondata.schema);
--- /dev/null
+{
+ "node-name": "node-a-fo",
+ "read-only": false,
+ "driver": "raw",
+ "file": "node-a-st"
+}
+{
+ "driver": "host_device",
+ "filename": "/dev/blah",
+ "pr-manager": "node-a-st-pr-alias",
+ "node-name": "node-a-st",
+ "read-only": false,
+ "discard": "unmap"
+}
--- /dev/null
+<disk device='disk' type='block'>
+ <driver name='qemu' type='raw'/>
+ <source dev='/dev/blah'>
+ <reservations enabled='yes' managed='yes'/>
+ <privateData>
+ <nodenames>
+ <nodename type='storage' name='node-a-st'/>
+ <nodename type='format' name='node-a-fo'/>
+ </nodenames>
+ <reservations mgralias='node-a-st-pr-alias'/>
+ </privateData>
+ </source>
+ <target dev='vda'/>
+</disk>