Let this new method handle the device object we obtained from the monitor in order to enhance readability. Signed-off-by: Erik Skultety <eskultet@xxxxxxxxxx> --- src/node_device/node_device_udev.c | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/src/node_device/node_device_udev.c b/src/node_device/node_device_udev.c index cd19e79c1..7ecb330df 100644 --- a/src/node_device/node_device_udev.c +++ b/src/node_device/node_device_udev.c @@ -1599,6 +1599,23 @@ nodeStateCleanup(void) } +static int +udevHandleOneDevice(struct udev_device *device) +{ + const char *action = udev_device_get_action(device); + + VIR_DEBUG("udev action: '%s'", action); + + if (STREQ(action, "add") || STREQ(action, "change")) + return udevAddOneDevice(device); + + if (STREQ(action, "remove")) + return udevRemoveOneDevice(device); + + return 0; +} + + static void udevEventHandleCallback(int watch ATTRIBUTE_UNUSED, int fd, @@ -1607,7 +1624,6 @@ udevEventHandleCallback(int watch ATTRIBUTE_UNUSED, { struct udev_device *device = NULL; struct udev_monitor *udev_monitor = DRV_STATE_UDEV_MONITOR(driver); - const char *action = NULL; int udev_fd = -1; udev_fd = udev_monitor_get_fd(udev_monitor); @@ -1635,18 +1651,7 @@ udevEventHandleCallback(int watch ATTRIBUTE_UNUSED, goto cleanup; } - action = udev_device_get_action(device); - VIR_DEBUG("udev action: '%s'", action); - - if (STREQ(action, "add") || STREQ(action, "change")) { - udevAddOneDevice(device); - goto cleanup; - } - - if (STREQ(action, "remove")) { - udevRemoveOneDevice(device); - goto cleanup; - } + udevHandleOneDevice(device); cleanup: udev_device_unref(device); -- 2.13.3 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list