As the parent address is part of the mdev nodedev name lets expose the
internally available parent address in the XML.
Signed-off-by: Boris Fiuczynski <fiuczy(a)linux.ibm.com>
---
docs/schemas/nodedev.rng | 5 +++++
src/conf/node_device_conf.c | 2 ++
tests/nodedevmdevctldata/mdevctl-list-multiple.out.xml | 5 +++++
3 files changed, 12 insertions(+)
diff --git a/docs/schemas/nodedev.rng b/docs/schemas/nodedev.rng
index e4733f0804..0d7d1168b6 100644
--- a/docs/schemas/nodedev.rng
+++ b/docs/schemas/nodedev.rng
@@ -644,6 +644,11 @@
<ref name="UUID"/>
</element>
</optional>
+ <optional>
+ <element name="parent_addr">
+ <data type="string"/>
+ </element>
+ </optional>
<zeroOrMore>
<element name="attr">
<attribute name="name"/>
diff --git a/src/conf/node_device_conf.c b/src/conf/node_device_conf.c
index 0bac0fde8d..61c8715037 100644
--- a/src/conf/node_device_conf.c
+++ b/src/conf/node_device_conf.c
@@ -604,6 +604,8 @@ virNodeDeviceCapMdevDefFormat(virBuffer *buf,
virBufferEscapeString(buf, "<type id='%s'/>\n",
data->mdev.type);
virBufferEscapeString(buf, "<uuid>%s</uuid>\n",
data->mdev.uuid);
+ virBufferEscapeString(buf, "<parent_addr>%s</parent_addr>\n",
+ data->mdev.parent_addr);
virBufferAsprintf(buf, "<iommuGroup number='%u'/>\n",
data->mdev.iommuGroupNumber);
diff --git a/tests/nodedevmdevctldata/mdevctl-list-multiple.out.xml
b/tests/nodedevmdevctldata/mdevctl-list-multiple.out.xml
index 4df5f4f43c..012c1a1596 100644
--- a/tests/nodedevmdevctldata/mdevctl-list-multiple.out.xml
+++ b/tests/nodedevmdevctldata/mdevctl-list-multiple.out.xml
@@ -4,6 +4,7 @@
<capability type='mdev'>
<type id='i915-GVTg_V5_4'/>
<uuid>200f228a-c80a-4d50-bfb7-f5a0e4e34045</uuid>
+ <parent_addr>0000:00:02.0</parent_addr>
<iommuGroup number='0'/>
</capability>
</device>
@@ -13,6 +14,7 @@
<capability type='mdev'>
<type id='i915-GVTg_V5_4'/>
<uuid>de807ffc-1923-4d5f-b6c9-b20ecebc6d4b</uuid>
+ <parent_addr>0000:00:02.0</parent_addr>
<iommuGroup number='0'/>
</capability>
</device>
@@ -22,6 +24,7 @@
<capability type='mdev'>
<type id='i915-GVTg_V5_8'/>
<uuid>435722ea-5f43-468a-874f-da34f1217f13</uuid>
+ <parent_addr>0000:00:02.0</parent_addr>
<iommuGroup number='0'/>
<attr name='testattr' value='42'/>
</capability>
@@ -32,6 +35,7 @@
<capability type='mdev'>
<type id='vfio_ap-passthrough'/>
<uuid>783e6dbb-ea0e-411f-94e2-717eaad438bf</uuid>
+ <parent_addr>matrix</parent_addr>
<iommuGroup number='0'/>
<attr name='assign_adapter' value='5'/>
<attr name='assign_adapter' value='6'/>
@@ -47,6 +51,7 @@
<capability type='mdev'>
<type id='vfio_ccw-io'/>
<uuid>cc000052-9b13-9b13-9b13-cc23009b1326</uuid>
+ <parent_addr>0.0.0052</parent_addr>
<iommuGroup number='0'/>
</capability>
</device>
--
2.33.1