From e120204729764f6243b60899eb907103e678bee2 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 18 Dec 2013 17:12:15 +0100 Subject: core,logind,networkd: check for udev device initialization via enumeration matches Instead of checking each device after we got it, check wuth an enumeration filter instead, to make it more efficient. --- src/core/device.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'src/core/device.c') diff --git a/src/core/device.c b/src/core/device.c index c93c94726d..72d98aea72 100644 --- a/src/core/device.c +++ b/src/core/device.c @@ -303,14 +303,6 @@ static int device_process_new_device(Manager *m, struct udev_device *dev) { assert(m); -#if 0 - /* FIXME: this is always false for devices received from udev_monitor */ - - /* Don't pick up devices before udev finished initialization for them */ - if (!udev_device_get_is_initialized(dev)) - return 0; -#endif - sysfs = udev_device_get_syspath(dev); if (!sysfs) return 0; @@ -557,6 +549,10 @@ static int device_enumerate(Manager *m) { if (r < 0) goto fail; + r = udev_enumerate_add_match_is_initialized(e); + if (r < 0) + goto fail; + r = udev_enumerate_scan_devices(e); if (r < 0) goto fail; -- cgit v1.2.3-54-g00ecf