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 1b3815f3bb7069f663624d99b28ae3d9346a1908..d7801296bd7c150319aa76110ef6a562e025aeaa 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 # Makefile for udev
 #
 # 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
 # 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
 #
 
 # 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
 
 # set this to make use of syslog
 USE_LOG = true
@@ -91,7 +91,7 @@ MAN_PAGES = \
 GEN_HEADERS = \
        udev_version.h
 
 GEN_HEADERS = \
        udev_version.h
 
-prefix =
+prefix ?=
 etcdir =       ${prefix}/etc
 sbindir =      ${prefix}/sbin
 usrbindir =    ${prefix}/usr/bin
 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)
 
 INSTALL_SCRIPT = ${INSTALL_PROGRAM}
 PWD = $(shell pwd)
 
-CROSS_COMPILE =
+CROSS_COMPILE ?=
 CC = $(CROSS_COMPILE)gcc
 LD = $(CROSS_COMPILE)gcc
 AR = $(CROSS_COMPILE)ar
 CC = $(CROSS_COMPILE)gcc
 LD = $(CROSS_COMPILE)gcc
 AR = $(CROSS_COMPILE)ar
index 7980b452c7b7a8a3c9741a64ea31e2bc5548179a..9fe4542dd5949fd41f2e78de469e86091f96c9cf 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.
 udev 097
 ========
 Bugfixes and small improvements.
@@ -8,7 +65,7 @@ Fix path_id for recent kernels.
 
 udev 095
 ========
 
 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.
 
 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 b0df3c12d33104eb20bf7ef65d4ac851b7e58671..7954deb50052fbb4362c8063f9b06eb1d943f42c 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
     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:
 
 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 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)