When an udev event occurs for a mediated device (mdev) the mdev config data
requires an update via mdevctl as the udev event does not contain all config
data. This update needs to occur immediate and to be finished before the libvirt
nodedev event is issued to keep the API usage reliable.
This patch series already contains the patches from a previous patch series
"[RFC PATCH v1 0/5] node_device_udev: small improvements" and has still some
TODO's included and is sent therefore as a RFC.
Boris Fiuczynski (3):
nodedev: fix mdev add udev event data handling
nodedev: immediate update of active config on udev add
nodedev: reset active config data on udev remove event
Marc Hartmayer (12):
node_device_udev: Set @def to NULL
node_device_udev: Remove the timeout if the data is disposed
node_device_udev: Test for mdevctlTimeout != -1
node_device_udev: Add comments about locking
node_device_udev: Take lock if `driver->privateData` is modified
node_device_udev: Add prefix `udev` for udev related data
node_device_udev: Inline `udevRemoveOneDevice`
node_device_udev: Use `stateShutdownPrepare` and `stateShutdownWait`
node_device_udev: Use a worker pool for processing the udev events
node_device_udev: Call `nodeDeviceUpdateMediatedDevices` directly
node_device_udev: Don't take `mdevctl` lock for querying `mdevctl
list`
node_device_udev: Make the code easier to read
src/node_device/node_device_driver.h | 5 +-
src/util/virmdev.h | 4 +
src/conf/node_device_conf.c | 10 +-
src/node_device/node_device_driver.c | 19 +-
src/node_device/node_device_udev.c | 435 ++++++++++++++++++---------
src/test/test_driver.c | 3 +-
src/util/virmdev.c | 20 ++
src/libvirt_private.syms | 2 +
8 files changed, 339 insertions(+), 159 deletions(-)
base-commit: 4b5cc57ed35dc24d11673dd3f04bfb8073c0340d
--
2.34.1