Package: udev Version: 0.076-2 Severity: important Tags: patch udev's ide.agent script currently calculates a number for the device, adds ten, and uses printf's "%x" (print hexadecimal number) option to construct the device name. Unfortunately, this only works for devices named "hda" through "hdf" -- the device that should be called "hdg" gets mistakenly called "hd10" since "10" is what comes after "f" in hex. The result is that the script hangs in wait_for_file because the file it's looking for never exists. It eventually times out, but not before things like LVM and RAID get confused because their device nodes don't exist yet.
The following patch makes ide.agent work for drives through "hdz": --- /lib/udev/ide.agent.orig 2005-11-25 20:51:51.000000000 -0500 +++ /lib/udev/ide.agent 2005-11-27 14:53:56.000000000 -0500 @@ -14,7 +14,8 @@ device=${DEVPATH#/devices/*/ide?/} drive=${device#?.} bus=${device%.?} -name=$(printf "hd%x" $(($drive + $bus * 2 + 10))) +index=$(($drive + $bus * 2 + 97)) +name=$(echo -e "hd\\$(printf %o $index)") procfile="/proc/ide/$name/media" wait_for_file $procfile This will break if there are more than 26 IDE devices, so some extra robustness wouldn't hurt, but such systems are probably rare so a simple check-and-exit should suffice. -- Package-specific info: -- /etc/udev/rules.d/: /etc/udev/rules.d/: total 4 lrwxrwxrwx 1 root root 20 2005-04-09 18:36 020_permissions.rules -> ../permissions.rules lrwxrwxrwx 1 root root 19 2005-10-11 22:15 025_libgphoto2.rules -> ../libgphoto2.rules lrwxrwxrwx 1 root root 16 2005-10-28 21:59 025_libsane.rules -> ../libsane.rules lrwxrwxrwx 1 root root 12 2005-10-17 22:31 050_hal-plugdev.rules -> ../hal.rules lrwxrwxrwx 1 root root 19 2005-01-15 14:40 cd-aliases.rules -> ../cd-aliases.rules -rw-r--r-- 1 root root 128 2005-10-24 01:19 netif.rules lrwxrwxrwx 1 root root 13 2005-01-15 14:40 udev.rules -> ../udev.rules lrwxrwxrwx 1 root root 19 2005-08-14 19:26 z20_persistent.rules -> ../persistent.rules lrwxrwxrwx 1 root root 12 2005-07-03 17:20 z50_run.rules -> ../run.rules lrwxrwxrwx 1 root root 16 2005-10-09 01:52 z55_hotplug.rules -> ../hotplug.rules lrwxrwxrwx 1 root root 19 2005-08-02 19:16 z60_alsa-utils.rules -> ../alsa-utils.rules lrwxrwxrwx 1 root root 15 2005-09-19 21:35 z60_hdparm.rules -> ../hdparm.rules lrwxrwxrwx 1 root root 17 2005-07-03 17:20 z70_hotplugd.rules -> ../hotplugd.rules -- /sys/: /sys/block/dm-0/dev /sys/block/dm-1/dev /sys/block/dm-2/dev /sys/block/dm-3/dev /sys/block/dm-4/dev /sys/block/dm-5/dev /sys/block/fd0/dev /sys/block/hda/dev /sys/block/hda/hda1/dev /sys/block/hdb/dev /sys/block/hdb/hdb1/dev /sys/block/hdb/hdb2/dev /sys/block/hdb/hdb5/dev /sys/block/hdb/hdb6/dev /sys/block/hdb/hdb7/dev /sys/block/hdc/dev /sys/block/hdd/dev /sys/block/hde/dev /sys/block/hde/hde1/dev /sys/block/hdi/dev /sys/block/hdi/hdi1/dev /sys/block/hdi/hdi2/dev /sys/block/hdk/dev /sys/block/hdk/hdk1/dev /sys/block/hdk/hdk2/dev /sys/block/md0/dev /sys/block/ram0/dev /sys/block/ram10/dev /sys/block/ram11/dev /sys/block/ram12/dev /sys/block/ram13/dev /sys/block/ram14/dev /sys/block/ram15/dev /sys/block/ram1/dev /sys/block/ram2/dev /sys/block/ram3/dev /sys/block/ram4/dev /sys/block/ram5/dev /sys/block/ram6/dev /sys/block/ram7/dev /sys/block/ram8/dev /sys/block/ram9/dev /sys/class/graphics/fb0/dev /sys/class/input/event0/dev /sys/class/input/event1/dev /sys/class/input/mice/dev /sys/class/input/mouse0/dev /sys/class/misc/agpgart/dev /sys/class/misc/device-mapper/dev /sys/class/misc/rtc/dev /sys/class/misc/vmmon/dev /sys/class/sound/admmidi/dev /sys/class/sound/adsp/dev /sys/class/sound/amidi/dev /sys/class/sound/audio/dev /sys/class/sound/controlC0/dev /sys/class/sound/dmmidi/dev /sys/class/sound/dsp/dev /sys/class/sound/hwC0D0/dev /sys/class/sound/hwC0D2/dev /sys/class/sound/midiC0D0/dev /sys/class/sound/midiC0D1/dev /sys/class/sound/midiC0D2/dev /sys/class/sound/midi/dev /sys/class/sound/mixer/dev /sys/class/sound/pcmC0D0c/dev /sys/class/sound/pcmC0D0p/dev /sys/class/sound/pcmC0D1c/dev /sys/class/sound/pcmC0D2c/dev /sys/class/sound/pcmC0D2p/dev /sys/class/sound/pcmC0D3p/dev /sys/class/sound/seq/dev /sys/class/sound/sequencer2/dev /sys/class/sound/sequencer/dev /sys/class/sound/timer/dev /sys/class/usb_device/usbdev1.1/dev /sys/class/usb_device/usbdev1.2/dev /sys/class/usb_device/usbdev2.1/dev /sys/class/usb_device/usbdev2.2/dev /sys/class/usb/lp0/dev -- Kernel configuration: isapnp_init not present. -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (990, 'unstable'), (800, 'stable'), (1, 'experimental') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.14 Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Versions of packages udev depends on: ii initscripts 2.86.ds1-6 Standard scripts needed for bootin ii libc6 2.3.5-8 GNU C Library: Shared libraries an ii libselinux1 1.26-1 SELinux shared libraries ii libsepol1 1.8-1 Security Enhanced Linux policy lib ii lsb-base 3.0-11 Linux Standard Base 3.0 init scrip ii makedev 2.3.1-79 creates device files in /dev ii sed 4.1.4-4 The GNU sed stream editor udev recommends no packages. -- debconf information: udev/devfs-warning: * udev/reboot-warning: -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]