diff options
author | Kay Sievers <kay.sievers@vrfy.org> | 2008-10-01 19:00:55 +0200 |
---|---|---|
committer | Kay Sievers <kay.sievers@vrfy.org> | 2008-10-01 19:00:55 +0200 |
commit | f13e4c36c2246eba5afae482c9bb60dc8c0b719d (patch) | |
tree | 11736c05d6790a63ca1e1f0d3f5a63ca926c81c5 | |
parent | 4dea370d493c6d94799e63128398ae8374b999b4 (diff) |
udevd: print warning if CONFIG_SYSFS_DEPRECATED is used
Future udev versions will depend on the current sysfs layout, which
includes features which are not available in the deprecated mode.
-rw-r--r-- | TODO | 3 | ||||
-rw-r--r-- | udev/udevd.c | 18 |
2 files changed, 16 insertions, 5 deletions
@@ -1,10 +1,9 @@ + o handle spaces in SYMLINK+=, do not create multiple links o use libudev device in udev_rules.c get rid of udevice, store rule matching state in rule iterator o rework rules to a match-action list, instead of a rules array o add DVB variables to kernel, and drop shell script rule o add watershed extra - o log warning if /sys/block/ does, but /sys/class/block/ does not exist, - udev will depend on the non-deprecated sysfs layout in a future release o DEVTYPE for disks is set by the kernel, they will be removed from the default rules o "udevadm control" commands will only accept the --<command> syntax diff --git a/udev/udevd.c b/udev/udevd.c index 1f8483c301..9783fe4e7c 100644 --- a/udev/udevd.c +++ b/udev/udevd.c @@ -953,9 +953,21 @@ int main(int argc, char *argv[]) fd = open("/dev/kmsg", O_WRONLY); if (fd > 0) { - const char *str = "<6>udevd version " VERSION " started\n"; - - write(fd, str, strlen(str)); + const char *ver_str = "<6>udev: starting version " VERSION "\n"; + char path[UTIL_PATH_SIZE]; + struct stat statbuf; + + write(fd, ver_str, strlen(ver_str)); + util_strlcpy(path, udev_get_sys_path(udev), sizeof(path)); + util_strlcat(path, "/class/mem/null", sizeof(path)); + if (lstat(path, &statbuf) == 0) { + if (S_ISDIR(statbuf.st_mode)) { + const char *depr_str = "<6>udev: deprecated sysfs layout " + "(CONFIG_SYSFS_DEPRECATED) is unsupported\n"; + + write(fd, depr_str, strlen(depr_str)); + } + } close(fd); } |