summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.am2
-rw-r--r--NEWS5
-rw-r--r--TODO1
-rw-r--r--libudev/libudev-device.c13
-rw-r--r--libudev/libudev-enumerate.c12
-rw-r--r--udev/udevd.c34
6 files changed, 13 insertions, 54 deletions
diff --git a/Makefile.am b/Makefile.am
index 62fe5a0f07..993d70075d 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -29,7 +29,7 @@ CLEANFILES =
# libudev
# ------------------------------------------------------------------------------
LIBUDEV_CURRENT=5
-LIBUDEV_REVISION=1
+LIBUDEV_REVISION=2
LIBUDEV_AGE=5
SUBDIRS += libudev/docs
diff --git a/NEWS b/NEWS
index 1b7377efb8..9977eaa6d2 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,11 @@ udev 150
========
Bugfixes.
+Kernels with SYSFS_DEPRECATED=y are not supported since a while. Many users
+depend on the current sysfs layout and the information not available in the
+deprecated layout. All remaining support for the deprecated sysfs layout is
+removed now.
+
udev 149
========
Fix for a possible endless loop in the new input_id program.
diff --git a/TODO b/TODO
index bc94f1b0ee..1fc80e1a4a 100644
--- a/TODO
+++ b/TODO
@@ -3,5 +3,4 @@
o get rid of "scan all devices to find myself" libusb interface
if it can not be fixed, drop libusb entirely and add a simple
wrapper around the Linux usb ioctls we need
- o drop all support for the DEPRECATED sysfs layout
o remove deprecated BUS=, SYSFS{}=, ID= keys
diff --git a/libudev/libudev-device.c b/libudev/libudev-device.c
index add1c99ec0..dffeed0b79 100644
--- a/libudev/libudev-device.c
+++ b/libudev/libudev-device.c
@@ -508,20 +508,9 @@ static struct udev_device *device_new_from_parent(struct udev_device *udev_devic
char path[UTIL_PATH_SIZE];
const char *subdir;
- /* follow "device" link in deprecated sys layout */
- if (strncmp(udev_device->devpath, "/class/", 7) == 0 ||
- strncmp(udev_device->devpath, "/block/", 7) == 0) {
- util_strscpyl(path, sizeof(path), udev_device->syspath, "/device", NULL);
- if (util_resolve_sys_link(udev_device->udev, path, sizeof(path)) == 0) {
- udev_device_parent = udev_device_new_from_syspath(udev_device->udev, path);
- if (udev_device_parent != NULL)
- return udev_device_parent;
- }
- }
-
util_strscpy(path, sizeof(path), udev_device->syspath);
subdir = &path[strlen(udev_get_sys_path(udev_device->udev))+1];
- while (1) {
+ for (;;) {
char *pos;
pos = strrchr(subdir, '/');
diff --git a/libudev/libudev-enumerate.c b/libudev/libudev-enumerate.c
index 186abb927e..2fcd348296 100644
--- a/libudev/libudev-enumerate.c
+++ b/libudev/libudev-enumerate.c
@@ -685,18 +685,6 @@ int udev_enumerate_scan_devices(struct udev_enumerate *udev_enumerate)
scan_dir(udev_enumerate, "bus", "devices", NULL);
dbg(udev, "searching '/class/*' dir\n");
scan_dir(udev_enumerate, "class", NULL, NULL);
- /* if block isn't a class, scan /block/ */
- util_strscpyl(base, sizeof(base), udev_get_sys_path(udev), "/class/block", NULL);
- if (stat(base, &statbuf) != 0) {
- if (match_subsystem(udev_enumerate, "block")) {
- dbg(udev, "searching '/block/*' dir\n");
- /* scan disks */
- scan_dir_and_add_devices(udev_enumerate, "block", NULL, NULL);
- /* scan partitions */
- dbg(udev, "searching '/block/*/*' dir\n");
- scan_dir(udev_enumerate, "block", NULL, "block");
- }
- }
}
return 0;
}
diff --git a/udev/udevd.c b/udev/udevd.c
index 300d603519..99647c683c 100644
--- a/udev/udevd.c
+++ b/udev/udevd.c
@@ -764,37 +764,11 @@ static void handle_signal(struct udev *udev, int signo)
}
}
-static void startup_log(struct udev *udev)
-{
- FILE *f;
- char path[UTIL_PATH_SIZE];
- struct stat statbuf;
-
- f = fopen("/dev/kmsg", "w");
- if (f != NULL)
- fprintf(f, "<6>udev: starting version " VERSION "\n");
-
- util_strscpyl(path, sizeof(path), udev_get_sys_path(udev), "/class/mem/null", NULL);
- if (lstat(path, &statbuf) == 0 && S_ISDIR(statbuf.st_mode)) {
- const char *depr_str =
- "udev: missing sysfs features; please update the kernel "
- "or disable the kernel's CONFIG_SYSFS_DEPRECATED option; "
- "udev may fail to work correctly";
-
- if (f != NULL)
- fprintf(f, "<3>%s\n", depr_str);
- err(udev, "%s\n", depr_str);
- sleep(15);
- }
-
- if (f != NULL)
- fclose(f);
-}
-
int main(int argc, char *argv[])
{
struct udev *udev;
int fd;
+ FILE *f;
sigset_t mask;
const char *value;
int daemonize = false;
@@ -988,7 +962,11 @@ int main(int argc, char *argv[])
}
}
- startup_log(udev);
+ f = fopen("/dev/kmsg", "w");
+ if (f != NULL) {
+ fprintf(f, "<6>udev: starting version " VERSION "\n");
+ fclose(f);
+ }
/* redirect std{out,err} */
if (!debug && !debug_trace) {