[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[libvirt] [PATCH 0/3] Add callback mech for qemu and nodedev



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


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]