chiark / gitweb /
[PATCH] wait_for_sysfs_update
authorkay.sievers@vrfy.org <kay.sievers@vrfy.org>
Thu, 14 Oct 2004 03:55:01 +0000 (20:55 -0700)
committerGreg KH <gregkh@suse.de>
Wed, 27 Apr 2005 04:47:44 +0000 (21:47 -0700)
Here is an update to wait_for_sysfs to print the udev version to syslog,
let hardware net interfaces wait again for the device link and
revert the video4linux to wait for the device. The error here was caused
by a out-of-tree media-driver, that needs the fix, not the our program.

I've added a small comment for that to the log as I expect more of this
to show up and the recent desktop integration work depends heavily on proper
sysfs support, so the drivers should be fixed.

wait_for_sysfs.c

index c1d7aa0a0c045fcb06b2ecec07c1cfc11996ad67..2252c30cd82229057ae836b8eb1b3c6163449d0b 100644 (file)
@@ -32,6 +32,7 @@
 #include <sys/stat.h>
 
 #include "logging.h"
+#include "udev_version.h"
 #include "libsysfs/sysfs/libsysfs.h"
 
 #ifdef LOG
@@ -138,11 +139,14 @@ static int class_device_expect_no_device_link(struct sysfs_class_device *class_d
                { .subsystem = "misc",          .device = NULL },
                { .subsystem = "msr",           .device = NULL },
                { .subsystem = "netlink",       .device = NULL },
-               { .subsystem = "net",           .device = NULL },
+               { .subsystem = "net",           .device = "sit" },
+               { .subsystem = "net",           .device = "ppp" },
+               { .subsystem = "net",           .device = "lo" },
+               { .subsystem = "net",           .device = "tap" },
                { .subsystem = "sound",         .device = NULL },
                { .subsystem = "printer",       .device = "lp" },
                { .subsystem = "nvidia",        .device = NULL },
-               { .subsystem = "video4linux",   .device = NULL },
+               { .subsystem = "video4linux",   .device = "vbi" },
                { .subsystem = "lirc",          .device = NULL },
                { .subsystem = "firmware",      .device = NULL },
                { .subsystem = "drm",           .device = NULL },
@@ -407,9 +411,10 @@ exit:
        if (rc == 0)
                dbg("result: waiting for sysfs successful '%s'", devpath);
        else
-               info("error: wait_for_sysfs needs an update to handle the device '%s' "
-                    "properly (%d), please report to <linux-hotplug-devel@lists.sourceforge.net>",
-                    devpath, rc);
+               info("either wait_for_sysfs (udev %s) needs an update to handle the device '%s' "
+                    "properly (%d) or the sysfs-support of your device's driver needs to be fixed, "
+                    "please report to <linux-hotplug-devel@lists.sourceforge.net>",
+                    UDEV_VERSION, devpath, rc);
 
        return rc;
 }