From mboxrd@z Thu Jan 1 00:00:00 1970 From: md@Linux.IT (Marco d'Itri) Date: Sat, 05 Feb 2005 15:50:31 +0000 Subject: patches from the debian package Message-Id: <20050205155031.GA12611@wonderland.linux.it> MIME-Version: 1 Content-Type: multipart/mixed; boundary="AhhlLboLdkugWU4S" List-Id: To: linux-hotplug@vger.kernel.org --AhhlLboLdkugWU4S Content-Type: text/plain; charset=us-ascii Content-Disposition: inline cdsymlinks_numeric: trivial fix, the variable is initialized to '', not 0 scsi_id_tmp: when udevstart is started, /tmp is not writeable. I updated the rules files to the new style, and added support for devfs names for hardware RAID controllers. Also, please remove etc/udev/debian/udev.permissions. -- ciao, Marco --AhhlLboLdkugWU4S Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=cdsymlinks_numeric diff -ruNp udev-050.orig/extras/cdsymlinks.sh udev-050/extras/cdsymlinks.sh --- udev-050.orig/extras/cdsymlinks.sh 2004-12-18 06:53:07.000000000 +0100 +++ udev-050/extras/cdsymlinks.sh 2005-01-18 18:44:07.000000000 +0100 @@ -159,7 +159,7 @@ output () { COUNT=$(($COUNT+1)) done # If the target dev ($1) is the current dev ($i), we output its name. - if test $(($NUMBERED_LINKS)) -ne 0 || test "$COUNT" -eq 0; then + if test $(($NUMBERED_LINKS)) -ne 0 || test "$COUNT" = ''; then test "$i" = "$1" && echo -n " $2$COUNT" fi # If the link isn't in our "existing links" list, add it and increment --AhhlLboLdkugWU4S Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=scsi_id_tmp diff -ruNp udev-050.orig/extras/scsi_id/scsi_id.c udev-050/extras/scsi_id/scsi_id.c --- udev-050.orig/extras/scsi_id/scsi_id.c 2004-12-18 06:53:07.000000000 +0100 +++ udev-050/extras/scsi_id/scsi_id.c 2005-01-01 22:19:15.000000000 +0100 @@ -44,8 +44,8 @@ /* * temporary names for mknod. */ -#define TMP_DIR "/tmp" -#define TMP_PREFIX "scsi" +#define TMP_DIR "/dev" +#define TMP_PREFIX "tmp-scsi" /* * XXX Note the 'e' (send output to stderr in all cases), and 'c' (callout) --AhhlLboLdkugWU4S Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="udev.rules" # There are a number of modifiers that are allowed to be used in some # of the different fields. They provide the following subsitutions: # # %n the "kernel number" of the device. # For example, 'sda3' has a "kernel number" of '3' # %e the smallest number for that name which does not matches an existing node # %k the kernel name for the device. # %M the kernel major number for the device # %m the kernel minor number for the device # %b the bus id for the device # %c the string returned by the PROGRAM # %s{filename} the content of a sysfs attribute. # %% the '%' char itself. # # default permissions for block devices SUBSYSTEM="block", GROUP="disk" SUBSYSTEM="block", SYSFS{removable}="1", GROUP="floppy" # workaround for devices which do not report media changes BUS="ide", KERNEL="hd[a-z]", SYSFS{removable}="1", \ PROGRAM="/bin/cat /proc/ide/%k/model", RESULT="IOMEGA ZIP *", \ NAME{all_partitions}="%k%n", GROUP="floppy" # IDE devices BUS="ide", KERNEL="hd[a-z]", SYSFS{removable}="1", \ PROGRAM="/bin/cat /proc/ide/%k/media", RESULT="cdrom*", \ GROUP="cdrom" BUS="ide", KERNEL="hd[a-z]", SYSFS{removable}="1", \ PROGRAM="/bin/cat /proc/ide/%k/media", RESULT="floppy*", \ GROUP="floppy" BUS="ide", KERNEL="ht[0-9]*", GROUP="tape" BUS="ide", KERNEL="nht[0-9]*", GROUP="tape" # SCSI devices BUS="scsi", KERNEL="sr[0-9]*", SYSFS{type}="5", \ NAME="scd%n", SYMLINK="sr%n", GROUP="cdrom" BUS="scsi", KERNEL="sg[0-9]*", SYSFS{type}="5", GROUP="cdrom" BUS="scsi", KERNEL="st[0-9]*", GROUP="tape" BUS="scsi", KERNEL="nst[0-9]*", GROUP="tape" BUS="scsi", KERNEL="osst[0-9]*", GROUP="tape" BUS="scsi", KERNEL="nosst[0-9]*", GROUP="tape" # USB devices BUS="usb", KERNEL="hiddev*", NAME="usb/%k" BUS="usb", KERNEL="auer[0-9]*", NAME="usb/%k" BUS="usb", KERNEL="legousbtower*", NAME="usb/%k", MODE="0666" BUS="usb", KERNEL="dabusb*", NAME="usb/%k" BUS="usb", KERNEL="cpad[0-9]*", NAME="usb/%k" BUS="usb", KERNEL="ttyUSB*", SYSFS{product}="Palm Handheld*", SYMLINK="pilot" # serial devices SUBSYSTEM="tty", GROUP="dialout" KERNEL="capi", NAME="capi20", SYMLINK="isdn/capi20" KERNEL="capi[0-9]*", NAME="capi/%n" # vc devices KERNEL="ptmx", MODE="0666" KERNEL="tty", MODE="0666" # video devices SUBSYSTEM="video4linux", GROUP="video" KERNEL="dvb*", PROGRAM="/etc/udev/scripts/dvb.sh %k", \ NAME="%c", GROUP="video" KERNEL="fb[0-9]*", GROUP="video" KERNEL="nvidia*", GROUP="video" KERNEL="card[0-9]*", NAME="dri/%k", GROUP="video" # misc devices KERNEL="random", MODE="0666" KERNEL="urandom", MODE="0444" KERNEL="mem", MODE="0640", GROUP="kmem" KERNEL="kmem", MODE="0640", GROUP="kmem" KERNEL="port", MODE="0640", GROUP="kmem" KERNEL="full", MODE="0666" KERNEL="null", MODE="0666" KERNEL="zero", MODE="0666" KERNEL="inotify", MODE="0666" KERNEL="sgi_fetchop", MODE="0666" KERNEL="sonypi", MODE="0666" KERNEL="agpgart", GROUP="video" KERNEL="nvram", GROUP="nvram" KERNEL="rtc", MODE="0664", GROUP="audio" KERNEL="hw_random", NAME="hwrng" # printers and parallel devices SUBSYSTEM="printer", GROUP="lp" BUS="usb", KERNEL="lp[0-9]*", NAME="usb/%k" KERNEL="pt[0-9]*", GROUP="tape" KERNEL="pht[0-9]*", GROUP="tape" KERNEL="fd[0-9]*", GROUP="floppy" KERNEL="cdemu[0-9]*", NAME="cdemu/%n", GROUP="cdrom" KERNEL="pktcdvd[0-9]*", NAME="pktcdvd/%n", GROUP="cdrom" KERNEL="pktcdvd", NAME="pktcdvd/control", MODE="0644" KERNEL="cpu[0-9]*", NAME="cpu/%n/cpuid" KERNEL="msr[0-9]*", NAME="cpu/%n/msr" KERNEL="microcode", NAME="cpu/microcode" KERNEL="umad*", NAME="infiniband/%k" KERNEL="issm*", NAME="infiniband/%k" KERNEL="tap[0-9]*", NAME="net/%k" KERNEL="tun", NAME="net/%k" # ALSA devices SUBSYSTEM="sound", GROUP="audio" KERNEL="controlC[0-9]*", NAME="snd/%k" KERNEL="hwC[D0-9]*", NAME="snd/%k" KERNEL="pcmC[D0-9cp]*", NAME="snd/%k" KERNEL="midiC[D0-9]*", NAME="snd/%k" KERNEL="timer", NAME="snd/%k" KERNEL="seq", NAME="snd/%k" # input devices KERNEL="mice", NAME="input/%k" KERNEL="mouse[0-9]*", NAME="input/%k" KERNEL="event[0-9]*", NAME="input/%k", \ PROGRAM="/etc/udev/scripts/inputdev.sh %k", RESULT="inputdev", \ MODE="0664", GROUP="video" KERNEL="event[0-9]*", NAME="input/%k" KERNEL="js[0-9]*", NAME="input/%k", MODE="0664" KERNEL="ts[0-9]*", NAME="input/%k" KERNEL="uinput", NAME="input/%k" # Zaptel KERNEL="zapctl", NAME="zap/ctl" KERNEL="zaptimer", NAME="zap/timer" KERNEL="zapchannel", NAME="zap/channel" KERNEL="zappseudo", NAME="zap/pseudo" KERNEL="zap[0-9]*", NAME="zap/%n" # device mapper creates its own device nodes, so ignore these KERNEL="dm-[0-9]*", NAME="" KERNEL="device-mapper", NAME="mapper/control" --AhhlLboLdkugWU4S Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="devfs.rules" # There are a number of modifiers that are allowed to be used in some # of the different fields. They provide the following subsitutions: # # %n the "kernel number" of the device. # For example, 'sda3' has a "kernel number" of '3' # %e the smallest number for that name which does not matches an existing node # %k the kernel name for the device. # %M the kernel major number for the device # %m the kernel minor number for the device # %b the bus id for the device # %c the string returned by the PROGRAM # %s{filename} the content of a sysfs attribute. # %% the '%' char itself. # # default permissions for block devices SUBSYSTEM="block", GROUP="disk" SUBSYSTEM="block", SYSFS{removable}="1", GROUP="floppy" # workaround for devices which do not report media changes BUS="ide", KERNEL="hd[a-z]", SYSFS{removable}="1", \ PROGRAM="/bin/cat /proc/ide/%k/model", RESULT="IOMEGA ZIP *", \ NAME{all_partitions}="%k%n", GROUP="floppy" # IDE devices BUS="ide", KERNEL="hd[a-z]", SYSFS{removable}="1", \ PROGRAM="/bin/cat /proc/ide/%k/media", RESULT="cdrom*", \ GROUP="cdrom" BUS="ide", KERNEL="hd[a-z]", SYSFS{removable}="1", \ PROGRAM="/bin/cat /proc/ide/%k/media", RESULT="floppy*", \ GROUP="floppy" BUS="ide", KERNEL="hd[a-z]*", \ PROGRAM="/etc/udev/scripts/ide-devfs.sh %k %b %n", \ NAME="%c{1}", SYMLINK="%k %c{2}" BUS="ide", KERNEL="ht[0-9]*", GROUP="tape" BUS="ide", KERNEL="nht[0-9]*", GROUP="tape" # SCSI devices BUS="scsi", KERNEL="sd[a-z]", \ PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", \ NAME="%c{1}", SYMLINK="%k %c{2}" BUS="scsi", KERNEL="sd[a-z][0-9]*", \ PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", \ NAME="%c{1}", SYMLINK="%k %c{2}" BUS="scsi", KERNEL="sd[a-i][a-z]", \ PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", \ NAME="%c{1}", SYMLINK="%k %c{2}" BUS="scsi", KERNEL="sd[a-i][a-z][0-9]*", \ PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", \ NAME="%c{1}", SYMLINK="%k %c{2}" BUS="scsi", KERNEL="s[gr][0-9]*", SYSFS{type}="5", \ PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", \ NAME="%c{1}", SYMLINK="%k %c{2}", GROUP="cdrom" BUS="scsi", KERNEL="sr[0-9]*", \ PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", \ NAME="%c{1}", SYMLINK="%k %c{2}", GROUP="cdrom" BUS="scsi", KERNEL="sg[0-9]*", \ PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", \ NAME="%c{1}", SYMLINK="%k %c{2}" BUS="scsi", KERNEL="st[0-9]*", \ PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", \ NAME="%c{1}", SYMLINK="%k %c{2}", GROUP="tape" BUS="scsi", KERNEL="nst[0-9]*", \ PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", \ NAME="%c{1}", SYMLINK="%k %c{2}", GROUP="tape" # RAID controllers KERNEL="cciss!*", PROGRAM="/etc/udev/scripts/raid-devfs.sh %k", \ NAME="%c{1}", SYMLINK="%k" KERNEL="ida!*", PROGRAM="/etc/udev/scripts/raid-devfs.sh %k", \ NAME="%c{1}", SYMLINK="%k" KERNEL="rd!*", PROGRAM="/etc/udev/scripts/raid-devfs.sh %k", \ NAME="%c{1}", SYMLINK="%k" # other block devices KERNEL="md[0-9]*", NAME="md/%n", KERNEL="loop[0-9]*", NAME="loop/%n" KERNEL="ram[0-9]*", NAME="rd/%n" # USB devices BUS="usb", KERNEL="hiddev*", NAME="usb/%k" BUS="usb", KERNEL="auer[0-9]*", NAME="usb/%k" BUS="usb", KERNEL="legousbtower*", NAME="usb/%k", MODE="0666" BUS="usb", KERNEL="dabusb*", NAME="usb/%k" BUS="usb", KERNEL="cpad[0-9]*", NAME="usb/%k" BUS="usb", KERNEL="ttyUSB*", SYSFS{product}="Palm Handheld*", SYMLINK="pilot" # serial devices SUBSYSTEM="tty", GROUP="dialout" KERNEL="ttyS[0-9]*", NAME="tts/%n" KERNEL="ttyUSB[0-9]*", NAME="tts/USB%n" KERNEL="rfcomm[0-9]*", NAME="bluetooth/rfcomm/%n", KERNEL="capi", NAME="capi20", SYMLINK="isdn/capi20" KERNEL="capi[0-9]*", NAME="capi/%n" # vc devices KERNEL="ptmx", MODE="0666" KERNEL="tty", MODE="0666" KERNEL="tty[0-9]*", NAME="vc/%n" KERNEL="vcs", NAME="vcc/0" KERNEL="vcs[0-9]*", NAME="vcc/%n" KERNEL="vcsa", NAME="vcc/a0" KERNEL="vcsa[0-9]*", NAME="vcc/a%n" # video devices SUBSYSTEM="video4linux", GROUP="video" KERNEL="video[0-9]*", NAME="v4l/%k" KERNEL="radio[0-9]*", NAME="v4l/%k" KERNEL="vbi[0-9]*", NAME="v4l/%k" KERNEL="vtx[0-9]*", NAME="v4l/%k" KERNEL="dvb*", PROGRAM="/etc/udev/scripts/dvb.sh %k", \ NAME="%c", GROUP="video" KERNEL="fb[0-9]*", NAME="fb/%n", GROUP="video" KERNEL="nvidia*", GROUP="video" KERNEL="card[0-9]*", NAME="dri/%k", GROUP="video" # misc devices KERNEL="random", MODE="0666" KERNEL="urandom", MODE="0444" KERNEL="mem", MODE="0640", GROUP="kmem" KERNEL="kmem", MODE="0640", GROUP="kmem" KERNEL="port", MODE="0640", GROUP="kmem" KERNEL="full", MODE="0666" KERNEL="null", MODE="0666" KERNEL="zero", MODE="0666" KERNEL="inotify", MODE="0666" KERNEL="sgi_fetchop", MODE="0666" KERNEL="sonypi", MODE="0666" KERNEL="apm_bios", NAME="misc/%k", KERNEL="agpgart", NAME="misc/%k", GROUP="video" KERNEL="nvram", NAME="misc/%k", GROUP="nvram" KERNEL="psaux", NAME="misc/%k" KERNEL="rtc", NAME="misc/%k", MODE="0644", GROUP="audio" KERNEL="hw_random", NAME="hwrng" # printers and parallel devices SUBSYSTEM="printer", GROUP="lp" BUS="usb", KERNEL="lp[0-9]*", NAME="usb/%k" KERNEL="lp[0-9]*", NAME="printers/%n" KERNEL="pt[0-9]*", GROUP="tape" KERNEL="pht[0-9]*", GROUP="tape" KERNEL="i2c-[0-9]*", NAME="i2c/%n" KERNEL="fd[0-9]*", NAME="floppy/%n", GROUP="floppy" KERNEL="cdemu[0-9]*", NAME="cdemu/%n", GROUP="cdrom" KERNEL="pktcdvd[0-9]*", NAME="pktcdvd/%n", GROUP="cdrom" KERNEL="pktcdvd", NAME="pktcdvd/control", MODE="0644" KERNEL="cpu[0-9]*", NAME="cpu/%n/cpuid" KERNEL="msr[0-9]*", NAME="cpu/%n/msr" KERNEL="microcode", NAME="cpu/microcode" KERNEL="umad*", NAME="infiniband/%k" KERNEL="issm*", NAME="infiniband/%k" KERNEL="tap[0-9]*", NAME="net/%k" KERNEL="tun", NAME="net/%k" # sound devices SUBSYSTEM="sound", GROUP="audio" KERNEL="controlC[0-9]*", NAME="snd/%k" KERNEL="hwC[D0-9]*", NAME="snd/%k" KERNEL="pcmC[D0-9cp]*", NAME="snd/%k" KERNEL="midiC[D0-9]*", NAME="snd/%k" KERNEL="timer", NAME="snd/%k" KERNEL="seq", NAME="snd/%k" KERNEL="audio*", NAME="sound/%k" KERNEL="dsp*", NAME="sound/%k" KERNEL="adsp*", NAME="sound/%k" KERNEL="midi*", NAME="sound/%k" KERNEL="mixer*", NAME="sound/%k" KERNEL="sequencer*", NAME="sound/%k" KERNEL="amidi*", NAME="sound/%k" KERNEL="dmmidi*", NAME="sound/%k" KERNEL="admmidi*", NAME="sound/%k" # input devices KERNEL="mice", NAME="input/%k" KERNEL="mouse[0-9]*", NAME="input/%k" KERNEL="event[0-9]*", NAME="input/%k", \ PROGRAM="/etc/udev/scripts/inputdev.sh %k", RESULT="inputdev", \ MODE="0664", GROUP="video" KERNEL="event[0-9]*", NAME="input/%k" KERNEL="js[0-9]*", NAME="input/%k", MODE="0664" KERNEL="ts[0-9]*", NAME="input/%k" KERNEL="uinput", NAME="input/%k" # Zaptel KERNEL="zapctl", NAME="zap/ctl" KERNEL="zaptimer", NAME="zap/timer" KERNEL="zapchannel", NAME="zap/channel" KERNEL="zappseudo", NAME="zap/pseudo" KERNEL="zap[0-9]*", NAME="zap/%n" # device mapper creates its own device nodes, so ignore these KERNEL="dm-[0-9]*", NAME="" KERNEL="device-mapper", NAME="mapper/control" --AhhlLboLdkugWU4S Content-Type: application/x-sh Content-Disposition: attachment; filename="raid-devfs.sh" Content-Transfer-Encoding: quoted-printable #!/bin/sh -e=0A#=0A# Copyright (c) 2004 Marco d'Itri =0A# Copy= right (c) 2004 Piotr Roszatycki =0A#=0A# Usage:=0A# KERN= EL=3D"cciss!*", PROGRAM=3D"/etc/udev/scripts/raid-devfs.sh %k", NAME=3D"%c{= 1}", SYMLINK=3D"%k"=0A# KERNEL=3D"ida!*", PROGRAM=3D"/etc/udev/scripts/ra= id-devfs.sh %k", NAME=3D"%c{1}", SYMLINK=3D"%k"=0A# KERNEL=3D"rd!*", PRO= GRAM=3D"/etc/udev/scripts/raid-devfs.sh %k", NAME=3D"%c{1}", SYMLINK=3D"%k"= =0A=0Aget_dev_number_cciss() {=0A grep '^cciss/' /proc/driver/cciss/* | ca= t -n | \=0A sed -n "/cciss\/$1:/s/cciss.*//p"=0A}=0A=0Aget_dev_number_id= a() {=0A grep '^ida/' /proc/driver/cpqarray/* | cat -n | \=0A sed -n "/= ida\/$1:/s/ida.*//p"=0A}=0A=0Aget_dev_number_rd() {=0A grep '^ */dev/rd/' = /proc/rd/*/initial_status | cat -n | \=0A sed -n "/rd\/$1:/s/\/dev\/rd.*= //p"=0A}=0A=0Aget_dev_number() {=0A dev=3D$1=0A num=3D$(eval $(echo g= et_dev_number_$TYPE $dev))=0A [ "$num" ] || exit 1=0A echo $(($num - = 1))=0A}=0A=0ATYPE=3D${1%%/*}=0ANAME=3D${1#*/}=0A=0A# abort if there was no = match=0A[ "$TYPE" !=3D "$1" ] || exit 1=0A=0Acase "$NAME" in=0A *p*)=0A = LONG_NAME=3Ddisc$(get_dev_number ${NAME%%p*})/part${NAME##*p}=0A ;;=0A *= )=0A LONG_NAME=3Ddisc$(get_dev_number $NAME)/disc=0A ;;=0Aesac=0A=0Aecho "$= TYPE/$LONG_NAME"=0Aexit 0=0A=0A --AhhlLboLdkugWU4S-- ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net Linux-hotplug-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel