On a Friday in 2021, Jonathon Jongsma wrote:
This interface allows you to undefine a persistently defined (but
inactive) mediated devices. It is implemented via 'mdevctl'
Signed-off-by: Jonathon Jongsma <jjongsma(a)redhat.com>
---
include/libvirt/libvirt-nodedev.h | 2 +
src/access/viraccessperm.c | 2 +-
src/access/viraccessperm.h | 6 ++
src/driver-nodedev.h | 4 +
src/libvirt-nodedev.c | 36 +++++++++
src/libvirt_public.syms | 1 +
src/node_device/node_device_driver.c | 73 +++++++++++++++++++
src/node_device/node_device_driver.h | 7 ++
src/node_device/node_device_udev.c | 1 +
src/remote/remote_driver.c | 1 +
src/remote/remote_protocol.x | 14 +++-
src/remote_protocol-structs | 4 +
.../nodedevmdevctldata/mdevctl-undefine.argv | 1 +
tests/nodedevmdevctltest.c | 8 ++
14 files changed, 158 insertions(+), 2 deletions(-)
create mode 100644 tests/nodedevmdevctldata/mdevctl-undefine.argv
diff --git a/src/node_device/node_device_udev.c b/src/node_device/node_device_udev.c
index 9de658cab5..b870446c55 100644
--- a/src/node_device/node_device_udev.c
+++ b/src/node_device/node_device_udev.c
@@ -2322,6 +2322,7 @@ static virNodeDeviceDriver udevNodeDeviceDriver = {
.nodeDeviceCreateXML = nodeDeviceCreateXML, /* 0.7.3 */
.nodeDeviceDestroy = nodeDeviceDestroy, /* 0.7.3 */
.nodeDeviceDefineXML = nodeDeviceDefineXML, /* 7.2.0 */
+ .nodeDeviceUndefine = nodeDeviceUndefine, /* 7.2.0 */
};
diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c
index 15c592b5b5..d3e21ea797 100644
--- a/src/remote/remote_driver.c
+++ b/src/remote/remote_driver.c
@@ -8697,6 +8697,7 @@ static virNodeDeviceDriver node_device_driver = {
.nodeDeviceListCaps = remoteNodeDeviceListCaps, /* 0.5.0 */
.nodeDeviceCreateXML = remoteNodeDeviceCreateXML, /* 0.6.3 */
.nodeDeviceDefineXML = remoteNodeDeviceDefineXML, /* 7.2.0 */
+ .nodeDeviceUndefine = remoteNodeDeviceUndefine, /* 7.2.0 */
.nodeDeviceDestroy = remoteNodeDeviceDestroy /* 0.6.3 */
};
7.2.0 is already released. These APIs will be a part of 7.3.0,
so the comment also needs bumping.
Jano