Add a callback mechanism for the nodedev driver (mimics the nwfilter)
to allow the (c)ability to directly enumerate node devices and add/remove
devices based on udev events.
This is a set up of sorts for the ability to add a vHBA definition
to a domain, create the vHBA, and allow the LUN's associated with the
vHBA to be automagially added/removed to/from the domain. The vHBA
code exists partially in some local branches I have, but I figure I
need to get this part of the logic accepted. See bz:
https://bugzilla.redhat.com/show_bug.cgi?id=1404964
for some "thoughts" on where this is headed.
An alternative solution would require the qemu driver to handle or
recognize nodedev connection events, but would require a few more
calls in order to get the data needed for vHBA handling.
The logic ends up being "hidden" behind a new qemu configuration
variable "enumerate_nodedev" (I'm fine using a different name). The
default is for the code to be disabled.
The end result may be usable by the (on list) vGPU mdev code as well
as a way to find/recogize an mdev create and the various "children"
of the mdev that would be created (and of course deletion). But that's
just me considering other uses.
John Ferlan (3):
nodedev: Add driver callback mechanism to add/remove devices
qemu: Use nodedev callback mechanism to to get a nodedev data
qemu: Add configuration variable to control nodedev enumeration
src/check-aclrules.pl | 3 +-
src/check-driverimpls.pl | 1 +
src/conf/node_device_conf.c | 125 ++++++++++++++++++++++++++++++++++++-
src/conf/node_device_conf.h | 18 ++++++
src/libvirt_private.syms | 3 +
src/node_device/node_device_udev.c | 29 +++++++++
src/qemu/libvirtd_qemu.aug | 1 +
src/qemu/qemu.conf | 19 ++++++
src/qemu/qemu_conf.c | 53 ++++++++++++++++
src/qemu/qemu_conf.h | 17 +++++
src/qemu/qemu_driver.c | 34 ++++++++++
src/qemu/test_libvirtd_qemu.aug.in | 1 +
12 files changed, 302 insertions(+), 2 deletions(-)
--
2.7.4