summaryrefslogtreecommitdiffstats
path: root/hw/block/trace-events
diff options
context:
space:
mode:
authorPaul Durrant2019-01-08 15:48:48 +0100
committerAnthony PERARD2019-01-14 14:45:40 +0100
commit1a72d9ae31517b2f83ec7923c820daf1887fde50 (patch)
tree93fc52be60c041090a3da449c312c74030a52454 /hw/block/trace-events
parentxen: introduce new 'XenBus' and 'XenDevice' object hierarchy (diff)
downloadqemu-1a72d9ae31517b2f83ec7923c820daf1887fde50.tar.gz
qemu-1a72d9ae31517b2f83ec7923c820daf1887fde50.tar.xz
qemu-1a72d9ae31517b2f83ec7923c820daf1887fde50.zip
xen: introduce 'xen-block', 'xen-disk' and 'xen-cdrom'
This patch adds new XenDevice-s: 'xen-disk' and 'xen-cdrom', both derived from a common 'xen-block' parent type. These will eventually replace the 'xen_disk' (note the underscore rather than hyphen) legacy PV backend but it is illustrative to build up the implementation incrementally, along with the XenBus/XenDevice framework. Subsequent patches will therefore add to these devices' implementation as new features are added to the framework. After this patch has been applied it is possible to instantiate new 'xen-disk' or 'xen-cdrom' devices with a single 'vdev' parameter, which accepts values adhering to the Xen VBD naming scheme [1]. For example, a command-line instantiation of a xen-disk can be done with an argument similar to the following: -device xen-disk,vdev=hda The implementation of the vdev parameter formulates the appropriate VBD number for use in the PV protocol. [1] https://xenbits.xen.org/docs/unstable/man/xen-vbd-interface.7.html Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Reviewed-by: Anthony Perard <anthony.perard@citrix.com> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
Diffstat (limited to 'hw/block/trace-events')
-rw-r--r--hw/block/trace-events8
1 files changed, 8 insertions, 0 deletions
diff --git a/hw/block/trace-events b/hw/block/trace-events
index 335c092450..4afbd62a88 100644
--- a/hw/block/trace-events
+++ b/hw/block/trace-events
@@ -127,3 +127,11 @@ xen_disk_init(char *name) "%s"
xen_disk_connect(char *name) "%s"
xen_disk_disconnect(char *name) "%s"
xen_disk_free(char *name) "%s"
+
+# hw/block/xen-block.c
+xen_block_realize(const char *type, uint32_t disk, uint32_t partition) "%s d%up%u"
+xen_block_unrealize(const char *type, uint32_t disk, uint32_t partition) "%s d%up%u"
+xen_disk_realize(void) ""
+xen_disk_unrealize(void) ""
+xen_cdrom_realize(void) ""
+xen_cdrom_unrealize(void) ""