Skip to contentSkip to conversation

udev 004 release

ANNOUNCE Greg KH 2 participants 4 messages Oct 21, 2003 – Oct 22, 2003

lore
Share & tools
lore

Greg KH

author
#0 lore raw

Hi,

I've released the 004 version of udev. It can be found at:
kernel.org/pub/linux/utils/kernel/hotplug/udev-004.tar.gz

Thanks to Robert Love, there are now rpms available at:

	kernel.org/pub/linux/utils/kernel/hotplug/udev-004-1.i386.rpm

with the source rpm at:
kernel.org/pub/linux/utils/kernel/hotplug/udev-004-1.src.rpm

udev is a implementation of devfs in userspace using sysfs and /sbin/hotplug. It requires a 2.6 kernel to run properly.

The major changes since the 003 release are:
- MAJOR speedups over the previous version. No more "sleep(1)" always, we now wait for the "dev" file to show up, and not blindly guess.
- partitions now work again.
- removal of devices that were named differently from the kernel name work properly.
- proper spec file.
- a man page with real content.
- sync up with current version of libsysfs.

Many thanks to Dan Stekloff, Kay Sievers, and Robert Love for their help with patches for this release. I really appreciate it.

The full ChangeLog can be found below.

The udev FAQ can be found at:
kernel.org/pub/linux/utils/kernel/hotplug/udev-FAQ

Development of udev is done in a BitKeeper tree available at:
bk://kernel.bkbits.net/gregkh/udev/

If anyone ever wants a snapshot of the current tree, due to not using BitKeeper, or other reasons, is always available at any time by asking.

thanks,

greg k-h

Summary of changes from v003 to v004
============================================

Daniel E. F. Stekloff:
o new version of libsysfs patch

Greg Kroah-Hartman:
o 004 release
o major database cleanups
o Changed test.block and test.tty to take ACTION from the command line
o don't sleep if 'dev' file is already present on device add
o fix comment about how the "dev" file is made up
o more database work. Now we only store the info we really need right now
o add BUS= bug to TODO list so it will not get forgotten
o spec file changes
o test.block changes
o ok, rpm likes the "_" character instead of "-" better
o change the version to 003-bk to keep things sane with people using the bk tree
o got "remove of named devices" working
o fix segfaults when dealing with partitions

Kay Sievers:
o man file update
o man page update

Robert Love:
o udev: mode should be mode_t
o udev: trivial trivialities
o udev: cool test scripts again
o udev spec file symlink support
o udev: cool test scripts
o udev spec file bits

#1 lore raw

Thanks for the new release, Greg. I just tried it out on a system with some disks, but a bunch of udev processes ended up hanging. Is there something I'm missing or do you need a patch like this?

Thanks,
Jesse

udev-add.c +1 -1
@@ -141,7 +141,7 @@
 	strcat(filename, path);
 	strcat(filename, "/dev");
 
-	while (loop < SECONDS_TO_WAIT_FOR_DEV) {
+	while (loop++ < SECONDS_TO_WAIT_FOR_DEV) {
 		dbg("looking for %s", filename);
 		retval = stat(filename, &buf);
 		if (retval == 0) {
author
#2 lore raw
Quoted 3 lines · Jesse Barnes

Thanks for the new release, Greg. I just tried it out on a system with some disks, but a bunch of udev processes ended up hanging. Is there something I'm missing or do you need a patch like this?

Yeah, sorry, this kind of fix is required :(

It's fixed in my bk tree now.

Oh, and it looks like the LABEL rule is also broken due to the libsysfs changes... I'm working on adding regression tests right now to prevent things like this from slipping through.

thanks,

greg k-h

author
#3 lore raw
Quoted 5 lines · Greg KH
Quoted 3 lines · Jesse Barnes

Thanks for the new release, Greg. I just tried it out on a system with some disks, but a bunch of udev processes ended up hanging. Is there something I'm missing or do you need a patch like this?

Quoted 7 lines

Yeah, sorry, this kind of fix is required :(

It's fixed in my bk tree now.

Oh, and it looks like the LABEL rule is also broken due to the libsysfs changes... I'm working on adding regression tests right now to prevent things like this from slipping through.

Here's a patch for this. It fixes the problem of LABEL rules on the device, not the class device. LABEL rules on the class device seem to work just fine.

Thanks to Dan Stekloff for help in finding this bug.

thanks,

greg k-h

# fix LABEL bug for device files (not class files.)
namedev.c +2 -2
diff -Nru a/namedev.c b/namedev.c
@@ -566,7 +566,7 @@
 
 			/* look in the class device directory if present */
 			if (class_dev->sysdevice) {
-				tmpattr = sysfs_get_classdev_attr(class_dev, dev->sysfs_file);
+				tmpattr = sysfs_get_device_attr(class_dev->sysdevice, dev->sysfs_file);
 				if (tmpattr)
 					goto label_found;
 			}
@@ -599,7 +599,7 @@
 
 					/* look in the class device directory if present */
 					if (class_dev_parent->sysdevice) {
-						tmpattr = sysfs_get_classdev_attr(class_dev_parent, dev->sysfs_file);
+						tmpattr = sysfs_get_device_attr(class_dev_parent->sysdevice, dev->sysfs_file);
 						if (tmpattr) 
 							goto label_found;
 					}