chiark / gitweb /
098 release
authorKay Sievers <kay.sievers@suse.de>
Tue, 22 Aug 2006 23:32:25 +0000 (01:32 +0200)
committerKay Sievers <kay.sievers@suse.de>
Tue, 22 Aug 2006 23:32:25 +0000 (01:32 +0200)
Makefile
RELEASE-NOTES
TODO

index 1b3815f..d780129 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 # Makefile for udev
 #
-# Copyright (C) 2003,2004 Greg Kroah-Hartman <greg@kroah.com>
+# Copyright (C) 2003-2004 Greg Kroah-Hartman <greg@kroah.com>
 # Copyright (C) 2004-2006 Kay Sievers <kay.sievers@vrfy.org>
 #
 # This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
 #
 
-VERSION = 097
+VERSION = 098
 
 # set this to make use of syslog
 USE_LOG = true
@@ -91,7 +91,7 @@ MAN_PAGES = \
 GEN_HEADERS = \
        udev_version.h
 
-prefix =
+prefix ?=
 etcdir =       ${prefix}/etc
 sbindir =      ${prefix}/sbin
 usrbindir =    ${prefix}/usr/bin
@@ -108,7 +108,7 @@ INSTALL_DATA = ${INSTALL} -m 644
 INSTALL_SCRIPT = ${INSTALL_PROGRAM}
 PWD = $(shell pwd)
 
-CROSS_COMPILE =
+CROSS_COMPILE ?=
 CC = $(CROSS_COMPILE)gcc
 LD = $(CROSS_COMPILE)gcc
 AR = $(CROSS_COMPILE)ar
index 7980b45..9fe4542 100644 (file)
@@ -1,3 +1,60 @@
+udev 098
+========
+Bugfixes.
+
+Renaming of some key names (the old names still work):
+BUS -> SUBSYSTEMS, ID -> KERNELS, SYSFS -> ATTRS, DRIVER -> DRIVERS.
+(The behavior of the key DRIVER will change soon in one of the next
+releases, to match only the event device, please switch to DRIVERS
+instead. If DRIVER is used, it will behave like DRIVERS, but an error
+is logged.
+With the new key names, we have a more consistent and simpler scheme.
+We can match the properties of the event device only, with: KERNEL,
+SUBSYSTEM, ATTR, DRIVER. Or include all the parent devices in the match,
+with: KERNELS, SUBSYSTEMS, ATTRS, DRIVERS. ID, BUS, SYSFS, DRIVER are no
+longer mentioned in the man page and should be switched in the rule
+files.
+
+ATTR{file}="value" can be used now, to write to a sysfs file of the
+event device. Instead of:
+  ..., SYSFS{type}=="0|7|14", RUN+="/bin/sh -c 'echo 60 > /sys$$DEVPATH/timeout'"
+we now can do:
+  ..., ATTR{type}=="0|7|14", ATTR{timeout}="60"
+
+All the PHYSDEV* keys are deprecated and will be removed from a
+future kernel:
+  PHYDEVPATH -    is the path of a parent device and should not be
+                  needed at all.
+  PHYSDEVBUS -    is just a SUBSYSTEM value of a parent, and can be
+                  matched with SUBSYSTEMS==
+  PHYSDEVDRIVER - for bus devices it is available as ENV{DRIVER}.
+                  Newer kernels will have DRIVER in the environment,
+                  for older kernels udev puts in. Class device will
+                  no longer carry this property of a parent and
+                  DRIVERS== can be used to match such a parent value.
+Note that ENV{DRIVER} is only available for a few bus devices, where
+the driver is already bound at device event time. On coldplug, the
+events for a lot devices are already bound to a driver, and they will have
+that value set. But on hotplug, at the time the kernel creates the device,
+it can't know what driver may claim the device after that, therefore
+in most cases it will be empty.
+
+Failed events should now be re-triggered with:
+   udevtrigger --retry-failed.
+Please switch to this command, so we keep the details of the /dev/.udev/failed/
+files private to the udev tools. We may need to switch the current symlink
+target, cause some obviously broken tools try to scan all files in /dev
+including /dev/.udev/, find the links to /sys and end up stat()'ing sysfs files
+million times. This takes ages on slow boxes.
+
+The udevinfo attribute walk (-a) now works with giving a device node
+name (-n) instead of a devpath (-p). The query now always works, also when
+no database file was created by udev.
+
+The built-in /etc/passwd /etc/group parser is removed, we always depend on
+getpwnam() and getgrnam() now. One of the next releases will depend on
+fnmatch() and may use getopt_long().
+
 udev 097
 ========
 Bugfixes and small improvements.
@@ -8,7 +65,7 @@ Fix path_id for recent kernels.
 
 udev 095
 ========
-%e is finaly gone.
+%e is finally gone.
 
 Added support for swapping network interface names, by temporarily
 renaming the device and wait for the target name to become free.
diff --git a/TODO b/TODO
index b0df3c1..7954deb 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,13 +1,38 @@
-These things need to be done, or would be nice to have:
-
-  o Log the relationship of the kernel name and the persistent disk name
+These things would be nice to have:
+  o log the relationship of the kernel name and the persistent disk name
     to syslog, so any error logged from the kernel can be associated with
-    any of the links at that time.
+    any of the links at that time
+
+These things will change in future udev versions:
+  o remove /sys prefix from symlinks in /dev/.udev/{queue,failed}
+    (broken tools search /dev for files and get lost following to /sys
+     and stat() sysfs files million times)
+
+  o make DRIVER== to match only the event device
+    (DRIVERS must be used, we currently translate it to DRIVERS and print
+     an error if DRIVER is used)
+
+  o switch to fnmatch() instead of our own implementation
+
+  o warn if PHYSDEV* keys are used in ENV keys
+    (they are deprecated and will be removed from a future kernel)
+
+  o warn if "/device/" is used in a ATTR, ATTRS, $sysfs key
+    (the device link must not be used in rules or tools, udev resolves
+     the link and makes the devices available as parents, which can
+     be matched with the normal keys)
+
+  o warn if BUS, ID, SYSFS are used as keys
+    (they are SUBSYSTEMS, KERNELS, ATTRS now)
 
 These things are deprecated and scheduled for removal in a future
 udev version:
+  o remove old udevdb dump 'udevinfo -d'
+    (-e exports everything)
 
   o remove udevstart
     (we rely on the kernel "uevent" triggers of kernel 2.6.15 and no longer
      want to guess event properties from sysfs like udevstart is doing it)
 
+  o remove extra for /etc/dev.d/ /etc/hotplug.d/
+    (that inefficient stuff should finally go away)