All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/4] Modify instmods to not rely on the existence of modules.* files
@ 2009-03-04  0:21 Victor Lowther
       [not found] ` <d53985b1c536e2fb845e0e3c369edd06d5018011.1236124962.git.victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  0 siblings, 1 reply; 19+ messages in thread
From: Victor Lowther @ 2009-03-04  0:21 UTC (permalink / raw)
  To: initramfs-u79uwXL29TY76Z2rM5mHXA

This patch series aims to make dracut more distro-independent.  It includes
some of the functionality that Seewer Philippe posted to the list to make 
dracut work on Ubuntu.

depmod does not create these files on all distros (Debian, specifically),
so modify instmods to use pathname components and find to do what we want.

As a bonus, this removes the special-case for =ata.
---
 dracut-functions |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/dracut-functions b/dracut-functions
index 852ce36..f40694e 100755
--- a/dracut-functions
+++ b/dracut-functions
@@ -167,17 +167,17 @@ dracut_install() {
     done
 }
 
-modcat="/lib/modules/$kernel/modules"
+srcmods="/lib/modules/$kernel/"
 instmods() {
     local mod mpargs modpath modname cmd
     while (($# > 0)); do
 	mod=${1%.ko}
+	mod=${mod##*/}
 	case $mod in
-	    =ata) instmods $mpargs $(cat "${modcat}.block" |egrep 'ata|ahci');;
-	    =*) instmods $mpargs $(cat "${modcat}.${mod#=}");;
+	    =*) instmods $mpargs $(find "$srcmods" -path "*/${mod#=}/*");;
 	    --*) mpargs+=" $mod";;
 	    *) modprobe $mpargs --set-version $kernel --show-depends $mod \
-		2>/dev/null |while read cmd modpath; do
+		2>/dev/null |while read cmd modpath options; do
 		    [[ $cmd = insmod ]] || continue
 		    modname=${modpath##*/}
 		    modname=${modname%.ko}
@@ -185,7 +185,7 @@ instmods() {
 			instmods $mpargs $modname
 			continue
 		    }
-		    inst_simple "$modpath" "/lib/modules/$kernel/$modname.ko"
+		    inst_simple "$modpath"
 		done
 		;;
 	esac
-- 
1.6.0.6

--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 2/4] Get rid of some RedHat specific modules and udev rules
       [not found] ` <d53985b1c536e2fb845e0e3c369edd06d5018011.1236124962.git.victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2009-03-04  0:21   ` Victor Lowther
       [not found]     ` <1d16a0aef8ab7f83212bd12dd71908f5c1a1a2a5.1236124962.git.victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2009-03-04  0:21   ` [PATCH 3/4] Steal rules we need from the latest udev package Victor Lowther
  2009-03-04  0:21   ` [PATCH 4/4] Fix several inst functions Victor Lowther
  2 siblings, 1 reply; 19+ messages in thread
From: Victor Lowther @ 2009-03-04  0:21 UTC (permalink / raw)
  To: initramfs-u79uwXL29TY76Z2rM5mHXA

They are not needed to boot with dracut, so away they go.

Also rewrite inst_rules to automatically search likely rule locations when
installing udev rules.
---
 dracut-functions         |   15 +++++++++--
 modules/10redhat-i18n.sh |   59 ----------------------------------------------
 modules/95udev-rules.sh  |    9 +++----
 3 files changed, 16 insertions(+), 67 deletions(-)

diff --git a/dracut-functions b/dracut-functions
index f40694e..fbcf315 100755
--- a/dracut-functions
+++ b/dracut-functions
@@ -55,7 +55,7 @@ inst_library() {
 	
 find_binary() {
     local binpath="/bin /sbin /usr/bin /usr/sbin" p
-    [[ ${1##*/} = $1 ]] || { echo $1; return 0; }
+    [[ ${1##*/} != $1 && -x $1 ]] && { echo $1; return 0; }
     for p in $binpath; do
 	[[ -x $p/$1 ]] && { echo "$p/$1"; return 0; }
     done
@@ -119,11 +119,19 @@ inst_symlink() {
     inst "$realsrc" && ln -s "$realsrc" "$target"
 }
 
+find_rule() {
+    for r in . /lib/udev/rules.d /etc/udev/rules.d $dsrc/rules.d; do
+	[[ -f $r/$1 ]] && { echo "$r/$1"; return 0; }
+    done
+    return 1
+}
+
 # udev rules always get installed in the same place, so
 # create a function to install them to make life simpler.
 inst_rules() { 
     for rule in "$@"; do 
-	inst_simple "$rule" "/lib/udev/rules.d/${rule##*/}"
+	rule=$(find_rule $rule) && \
+	    inst_simple "$rule" "/lib/udev/rules.d/${rule##*/}"
     done
 }
 
@@ -134,7 +142,8 @@ inst() {
         echo "usage: inst <file> <root> [<destination file>]"
         return 1
     fi
-    local src=$(find_binary "$1") || {
+    local src dest
+    src=$(find_binary "$1") || {
 	echo "Cannot find requested file $1. Exiting."
 	exit 1
     }
diff --git a/modules/10redhat-i18n.sh b/modules/10redhat-i18n.sh
deleted file mode 100755
index ae50bbc..0000000
--- a/modules/10redhat-i18n.sh
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/bin/bash
-findkeymap () {
-    local MAP=$1
-    [[ ! -f $MAP ]] && \
-	MAP=$(find /lib/kbd/keymaps -type f -name $MAP -o -name $MAP.\* | head -n1)
-    [[ " $KEYMAPS " = *" $MAP "* ]] && return
-    KEYMAPS="$KEYMAPS $MAP"
-    case $MAP in
-        *.gz) cmd=zgrep;;
-        *.bz2) cmd=bzgrep;;
-        *) cmd=grep ;;
-    esac
-
-    for INCL in $($cmd "^include " $MAP | cut -d' ' -f2 | tr -d '"'); do
-        for FN in $(find /lib/kbd/keymaps -type f -name $INCL\*); do
-            findkeymap $FN
-        done
-    done
-}
-
-# FIXME: i18n stuff isn't really distro-independent :/
-if [[ -f /etc/sysconfig/keyboard || -f /etc/sysconfig/console/default.kmap ]]; then
-    if [ -f /etc/sysconfig/console/default.kmap ]; then
-        KEYMAP=/etc/sysconfig/console/default.kmap
-    else
-        . /etc/sysconfig/keyboard
-        [[ $KEYTABLE && -d /lib/kbd/keymaps ]] && KEYMAP="$KEYTABLE.map"
-    fi
-    if [[ $KEYMAP ]]; then
-        [ -f /etc/sysconfig/keyboard ] && inst /etc/sysconfig/keyboard
-        inst loadkeys
-        findkeymap $KEYMAP
-
-        for FN in $KEYMAPS; do
-            inst $FN
-            case $FN in
-                *.gz) gzip -d "$initdir$FN" ;;
-                *.bz2) bzip2 -d "$initdir$FN" ;;
-            esac
-        done
-    fi
-fi
-
-if [ -f /etc/sysconfig/i18n ]; then
-    . /etc/sysconfig/i18n
-    inst /etc/sysconfig/i18n
-    [[ $SYSFONT ]] || SYSFONT=latarcyrheb-sun16
-    inst setfont
-
-    for FN in /lib/kbd/consolefonts/$SYSFONT.* ; do
-        inst "$FN"
-        case $FN in
-            *.gz) gzip -d "$initdir$FN" ;;
-            *.bz2) bzip2 -d "$initdir$FN" ;;
-        esac
-    done
-    [[ $SYSFONTACM ]] && inst /lib/kbd/consoletrans/$SYSFONTACM
-    [[ $UNIMAP ]] && inst /lib/kbd/unimaps/$UNIMAP
-fi
diff --git a/modules/95udev-rules.sh b/modules/95udev-rules.sh
index 61125cd..c11752f 100755
--- a/modules/95udev-rules.sh
+++ b/modules/95udev-rules.sh
@@ -3,10 +3,9 @@
 # ultimately, /lib/initramfs/rules.d or somesuch which includes links/copies
 # of the rules we want so that we just copy those in would be best
 mkdir -p "$initdir/lib/udev/rules.d"
-dracut_install udevd udevadm /lib/udev/*_id /lib/udev/console_*
-inst_rules /lib/udev/rules.d/10-console* /lib/udev/rules.d/40-redhat* \
-    /lib/udev/rules.d/50* /lib/udev/rules.d/60-persistent-storage.rules \
-    /lib/udev/rules.d/61*edd* /lib/udev/rules.d/64* /lib/udev/rules.d/80* \
-    /lib/udev/rules.d/95*
+dracut_install udevd udevadm /lib/udev/*_id
+inst_rules 50-udev-default.rules 60-persistent-storage.rules \
+    61-persistent-storage-edd.rules 64-device-mapper.rules \
+    64-md-raid.rules 80-drivers.rules 95-udev-late.rules
 # make udevadm shut up about missing udev.conf
 inst /etc/udev/udev.conf
\ No newline at end of file
-- 
1.6.0.6

--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found] ` <d53985b1c536e2fb845e0e3c369edd06d5018011.1236124962.git.victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2009-03-04  0:21   ` [PATCH 2/4] Get rid of some RedHat specific modules and udev rules Victor Lowther
@ 2009-03-04  0:21   ` Victor Lowther
       [not found]     ` <462be3c3cfdf24ba51bc4d1a1f66cc30b8d29d82.1236124962.git.victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2009-03-04  0:21   ` [PATCH 4/4] Fix several inst functions Victor Lowther
  2 siblings, 1 reply; 19+ messages in thread
From: Victor Lowther @ 2009-03-04  0:21 UTC (permalink / raw)
  To: initramfs-u79uwXL29TY76Z2rM5mHXA

This should arguably be done by importing the udev git repo as a submodule,
but I am too lazy to figure out how to do that right now.

I suppose this could also be done by rewriting the 95udev-rules.sh module
for each distribution, but that is something best left to the distro 
maintainers once we acheive some sort of widespread adoption.  Until then,
stealing rules from upstream udev seems like the most portable solution.

---
 rules.d/50-udev-default.rules           |  120 +++++++++++++++++++++++++++++++
 rules.d/60-persistent-storage.rules     |   70 ++++++++++++++++++
 rules.d/61-persistent-storage-edd.rules |   12 +++
 rules.d/64-device-mapper.rules          |    4 +
 rules.d/64-md-raid.rules                |   33 +++++++++
 rules.d/80-drivers.rules                |   16 ++++
 rules.d/95-udev-late.rules              |    8 ++
 7 files changed, 263 insertions(+), 0 deletions(-)

diff --git a/rules.d/50-udev-default.rules b/rules.d/50-udev-default.rules
new file mode 100644
index 0000000..95d82d7
--- /dev/null
+++ b/rules.d/50-udev-default.rules
@@ -0,0 +1,120 @@
+# do not edit this file, it will be overwritten on update
+
+SUBSYSTEM=="block", SYMLINK+="block/%M:%m"
+SUBSYSTEM!="block", SYMLINK+="char/%M:%m"
+
+KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660"
+KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660"
+KERNEL=="ptmx",			GROUP="tty", MODE="0666"
+KERNEL=="tty",			GROUP="tty", MODE="0666"
+KERNEL=="tty[0-9]*",		GROUP="tty", MODE="0620"
+KERNEL=="vcs|vcs[0-9]*|vcsa|vcsa[0-9]*", GROUP="tty"
+KERNEL=="console",		MODE="0600"
+
+# serial
+KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*", GROUP="dialout"
+KERNEL=="ppp",			MODE="0600"
+KERNEL=="mwave",		NAME="modems/mwave", GROUP="dialout"
+KERNEL=="hvc*|hvsi*",		GROUP="dialout"
+
+# mem
+KERNEL=="null|zero|full|random|urandom", MODE="0666"
+KERNEL=="mem|kmem|port|nvram",	GROUP="kmem", MODE="0640"
+
+# input
+KERNEL=="mouse*|mice|event*",	NAME="input/%k", MODE="0640"
+KERNEL=="ts[0-9]*|uinput",	NAME="input/%k", MODE="0640"
+KERNEL=="js[0-9]*",		NAME="input/%k", MODE="0644"
+
+# video4linux
+SUBSYSTEM=="video4linux",	GROUP="video"
+KERNEL=="vttuner*",		GROUP="video"
+KERNEL=="vtx*|vbi*",		GROUP="video"
+KERNEL=="winradio*",		GROUP="video"
+
+# graphics
+KERNEL=="agpgart",		MODE="0600", GROUP="video"
+KERNEL=="card[0-9]*",		NAME="dri/%k"
+KERNEL=="pmu",			GROUP="video"
+KERNEL=="nvidia*|nvidiactl*",	GROUP="video"
+SUBSYSTEM=="graphics",		GROUP="video"
+SUBSYSTEM=="drm",		GROUP="video"
+
+# DVB (video)
+SUBSYSTEM=="dvb", ENV{DVB_ADAPTER_NUM}=="?*", NAME="dvb/adapter$env{DVB_ADAPTER_NUM}/$env{DVB_DEVICE_TYPE}$env{DVB_DEVICE_NUM}", GROUP="video"
+SUBSYSTEM=="dvb", ENV{DVB_ADAPTER_NUM}=="", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="video"
+
+# Firewire
+KERNEL=="dv1394[0-9]*",		NAME="dv1394/%n", GROUP="video"
+KERNEL=="video1394[0-9]*",	NAME="video1394/%n", GROUP="video"
+
+# libusb device nodes
+SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}", MODE="0664"
+
+# printer
+KERNEL=="parport[0-9]*",	GROUP="lp"
+SUBSYSTEM=="printer",		KERNEL=="lp*", GROUP="lp"
+SUBSYSTEM=="ppdev",		GROUP="lp"
+SUBSYSTEM=="usb",		KERNEL=="lp*", NAME="usb/%k", SYMLINK+="usb%k", GROUP="lp"
+KERNEL=="lp[0-9]*",		GROUP="lp"
+KERNEL=="irlpt[0-9]*",		GROUP="lp"
+
+# block
+SUBSYSTEM=="block", GROUP="disk"
+
+# floppy
+KERNEL=="fd[0-9]", GROUP="floppy"
+KERNEL=="fd[0-9]", ACTION=="add", ATTRS{cmos}=="?*", RUN+="create_floppy_devices -c -t $attr{cmos} -m %M -M 0640 -G floppy $root/%k"
+KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="floppy", OPTIONS+="all_partitions"
+
+# cdrom
+SUBSYSTEM=="block", KERNEL=="sr[0-9]*", SYMLINK+="scd%n", GROUP="cdrom"
+SUBSYSTEM=="block", KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="cdrom", GROUP="cdrom"
+SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", GROUP="cdrom"
+KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/%k", GROUP="cdrom"
+KERNEL=="pktcdvd", NAME="pktcdvd/control", GROUP="cdrom"
+
+# tape
+KERNEL=="ht[0-9]*|nht[0-9]*", GROUP="tape"
+KERNEL=="pt[0-9]*|npt[0-9]*|pht[0-9]*", GROUP="tape"
+SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="tape"
+
+# block-releated
+KERNEL=="sch[0-9]*", GROUP="disk"
+SUBSYSTEMS=="scsi", ATTRS{type}=="0", GROUP="disk"
+KERNEL=="pg[0-9]*", GROUP="disk"
+KERNEL=="qft[0-9]*|nqft[0-9]*|zqft[0-9]*|nzqft[0-9]*|rawqft[0-9]*|nrawqft[0-9]*", GROUP="disk"
+KERNEL=="rawctl", NAME="raw/rawctl", GROUP="disk"
+SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", NAME="raw/%k", GROUP="disk"
+SUBSYSTEM=="bsg", NAME="bsg/%k"
+SUBSYSTEM=="aoe", NAME="etherd/%k", GROUP="disk", MODE="0220"
+SUBSYSTEM=="aoe", KERNEL=="err", MODE="0440"
+
+# network
+KERNEL=="tun",			NAME="net/%k", MODE="0666"
+
+# CPU
+KERNEL=="cpu[0-9]*",		NAME="cpu/%n/cpuid"
+KERNEL=="msr[0-9]*",		NAME="cpu/%n/msr"
+KERNEL=="microcode",		NAME="cpu/microcode", MODE="0600"
+
+# miscellaneous
+KERNEL=="fuse",			MODE="0666"
+SUBSYSTEM=="rtc", DRIVERS=="rtc_cmos", SYMLINK+="rtc"
+KERNEL=="auer[0-9]*",		NAME="usb/%k"
+KERNEL=="hw_random",		NAME="hwrng"
+KERNEL=="mmtimer",		MODE="0644"
+KERNEL=="rflash[0-9]*",		MODE="0400"
+KERNEL=="rrom[0-9]*",		MODE="0400"
+KERNEL=="sxctl",		NAME="specialix_sxctl""
+KERNEL=="rioctl",		NAME="specialix_rioctl"
+KERNEL=="iowarrior[0-9]*",	NAME="usb/%k"
+KERNEL=="hiddev[0-9]*",		NAME="usb/%k"
+KERNEL=="legousbtower[0-9]*",	NAME="usb/%k"
+KERNEL=="dabusb[0-9]*",		NAME="usb/%k"
+KERNEL=="usbdpfp[0-9]*",	NAME="usb/%k"
+KERNEL=="cpad[0-9]*",		NAME="usb/%k"
+
+# do not delete static device nodes
+ACTION=="remove", NAME=="?*", TEST=="/lib/udev/devices/$name", OPTIONS+="ignore_remove"
+ACTION=="remove", NAME=="", TEST=="/lib/udev/devices/%k", OPTIONS+="ignore_remove"
diff --git a/rules.d/60-persistent-storage.rules b/rules.d/60-persistent-storage.rules
new file mode 100644
index 0000000..14bd75f
--- /dev/null
+++ b/rules.d/60-persistent-storage.rules
@@ -0,0 +1,70 @@
+# do not edit this file, it will be overwritten on update
+
+# persistent storage links: /dev/disk/{by-id,by-uuid,by-label,by-path}
+# scheme based on "Linux persistent device names", 2004, Hannes Reinecke <hare-l3A5Bk7waGM@public.gmane.org>
+
+# forward scsi device event to corresponding block device
+ACTION=="change", SUBSYSTEM=="scsi", ENV{DEVTYPE}=="scsi_device", TEST=="block", ATTR{block/*/uevent}="change"
+
+ACTION!="add|change", GOTO="persistent_storage_end"
+SUBSYSTEM!="block", GOTO="persistent_storage_end"
+
+# skip rules for inappropriate block devices
+KERNEL=="ram*|fd*|nbd*|gnbd*|dm-*|md*|btibm*", GOTO="persistent_storage_end"
+
+# never access non-cdrom removable ide devices, the drivers are causing event loops on open()
+KERNEL=="hd*[!0-9]", ATTR{removable}=="1", DRIVERS=="ide-cs|ide-floppy", GOTO="persistent_storage_end"
+KERNEL=="hd*[0-9]", ATTRS{removable}=="1", GOTO="persistent_storage_end"
+
+# ignore partitions that span the entire disk
+TEST=="whole_disk", GOTO="persistent_storage_end"
+
+# for partitions import parent information
+ENV{DEVTYPE}=="partition", IMPORT{parent}="ID_*"
+
+# by-id (hardware serial number)
+KERNEL=="hd*[!0-9]", IMPORT{program}="ata_id --export $tempnode"
+KERNEL=="hd*[!0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/ata-$env{ID_MODEL}_$env{ID_SERIAL}"
+KERNEL=="hd*[0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/ata-$env{ID_MODEL}_$env{ID_SERIAL}-part%n"
+
+KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}!="?*", SUBSYSTEMS=="usb", IMPORT{program}="usb_id --export %p"
+KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}!="?*", IMPORT{program}="scsi_id --export --whitelisted -d $tempnode", ENV{ID_BUS}="scsi"
+KERNEL=="cciss*", ENV{DEVTYPE}=="disk", ENV{ID_SERIAL}!="?*", IMPORT{program}="scsi_id --export --whitelisted -d $tempnode", ENV{ID_BUS}="cciss"
+KERNEL=="sd*|sr*|cciss*", ENV{DEVTYPE}=="disk", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
+KERNEL=="sd*|cciss*", ENV{DEVTYPE}=="partition", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}-part%n"
+
+# firewire
+KERNEL=="sd*[!0-9]|sr*", ATTRS{ieee1394_id}=="?*", SYMLINK+="disk/by-id/ieee1394-$attr{ieee1394_id}"
+KERNEL=="sd*[0-9]", ATTRS{ieee1394_id}=="?*", SYMLINK+="disk/by-id/ieee1394-$attr{ieee1394_id}-part%n"
+
+# libata compat (ata-* links, like old hd* devices did create)
+KERNEL=="sd*[!0-9]", ENV{ID_VENDOR}=="ATA", PROGRAM="ata_id $tempnode", RESULT=="?*", ENV{ID_ATA_COMPAT}="$result", SYMLINK+="disk/by-id/ata-$env{ID_ATA_COMPAT}"
+KERNEL=="sd*[0-9]", ENV{ID_ATA_COMPAT}=="?*", SYMLINK+="disk/by-id/ata-$env{ID_ATA_COMPAT}-part%n"
+
+KERNEL=="mmcblk[0-9]", SUBSYSTEMS=="mmc", ATTRS{name}=="?*", ATTRS{serial}=="?*", ENV{ID_NAME}="$attr{name}", ENV{ID_SERIAL}="$attr{serial}", SYMLINK+="disk/by-id/mmc-$env{ID_NAME}_$env{ID_SERIAL}"
+KERNEL=="mmcblk[0-9]p[0-9]", ENV{ID_NAME}=="?*", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/mmc-$env{ID_NAME}_$env{ID_SERIAL}-part%n"
+KERNEL=="mspblk[0-9]", SUBSYSTEMS=="memstick", ATTRS{name}=="?*", ATTRS{serial}=="?*", ENV{ID_NAME}="$attr{name}", ENV{ID_SERIAL}="$attr{serial}", SYMLINK+="disk/by-id/memstick-$env{ID_NAME}_$env{ID_SERIAL}"
+KERNEL=="mspblk[0-9]p[0-9]", ENV{ID_NAME}=="?*", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/memstick-$env{ID_NAME}_$env{ID_SERIAL}-part%n"
+
+# by-path (parent device path)
+ENV{DEVTYPE}=="disk", IMPORT{program}="path_id %p"
+ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}"
+ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}-part%n"
+
+# skip unpartitioned removable media devices from drivers which do not send "change" events
+ENV{DEVTYPE}=="disk", KERNEL!="sd*|sr*", ATTR{removable}=="1", GOTO="persistent_storage_end"
+
+# probe filesystem metadata of optical drives which have a media inserted
+KERNEL=="sr*", ENV{ID_CDROM_MEDIA_TRACK_COUNT}=="?*", IMPORT{program}="vol_id --export --skip-raid --offset=$env{ID_CDROM_MEDIA_SESSION_LAST_OFFSET} $tempnode"
+
+# probe filesystem metadata of disks
+KERNEL!="sr*", IMPORT{program}="vol_id --export $tempnode"
+
+# watch for future changes
+KERNEL!="sr*", OPTIONS+="watch"
+
+# by-label/by-uuid links (filesystem metadata)
+ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
+ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
+
+LABEL="persistent_storage_end"
diff --git a/rules.d/61-persistent-storage-edd.rules b/rules.d/61-persistent-storage-edd.rules
new file mode 100644
index 0000000..bd020b7
--- /dev/null
+++ b/rules.d/61-persistent-storage-edd.rules
@@ -0,0 +1,12 @@
+# do not edit this file, it will be overwritten on update
+
+ACTION!="add|change", GOTO="persistent_storage_edd_end"
+SUBSYSTEM!="block", GOTO="persistent_storage_edd_end"
+KERNEL!="sd*|hd*", GOTO="persistent_storage_edd_end"
+
+# BIOS Enhanced Disk Device
+ENV{DEVTYPE}=="disk", IMPORT{program}="edd_id --export $tempnode"
+ENV{DEVTYPE}=="disk", ENV{ID_EDD}=="?*", SYMLINK+="disk/by-id/edd-$env{ID_EDD}"
+ENV{DEVTYPE}=="partition", ENV{ID_EDD}=="?*", SYMLINK+="disk/by-id/edd-$env{ID_EDD}-part%n"
+
+LABEL="persistent_storage_edd_end"
diff --git a/rules.d/64-device-mapper.rules b/rules.d/64-device-mapper.rules
new file mode 100644
index 0000000..8154ef3
--- /dev/null
+++ b/rules.d/64-device-mapper.rules
@@ -0,0 +1,4 @@
+# do not edit this file, it will be overwritten on update
+
+KERNEL=="device-mapper",	NAME="mapper/control"
+
diff --git a/rules.d/64-md-raid.rules b/rules.d/64-md-raid.rules
new file mode 100644
index 0000000..abb029c
--- /dev/null
+++ b/rules.d/64-md-raid.rules
@@ -0,0 +1,33 @@
+# do not edit this file, it will be overwritten on update
+
+SUBSYSTEM!="block", GOTO="md_end"
+ACTION!="add|change", GOTO="md_end"
+
+# import data from a raid member and activate it
+#ENV{ID_FS_TYPE}=="linux_raid_member", IMPORT{program}="/sbin/mdadm --examine --export $tempnode", RUN+="/sbin/mdadm --incremental $env{DEVNAME}"
+# import data from a raid set
+KERNEL!="md*", GOTO="md_end"
+
+# container devices have a metadata version of e.g. 'external:ddf' and
+# never leave state 'inactive'
+ATTR{md/metadata_version}=="external:[A-Za-z]*", ATTR{md/array_state}=="inactive", GOTO="md_ignore_state"
+TEST!="md/array_state", GOTO="md_end"
+ATTR{md/array_state}=="|clear|inactive", GOTO="md_end"
+LABEL="md_ignore_state"
+
+IMPORT{program}="/sbin/mdadm --detail --export $tempnode"
+ENV{DEVTYPE}=="disk", ENV{MD_NAME}=="?*", SYMLINK+="disk/by-id/md-name-$env{MD_NAME}", OPTIONS+="string_escape=replace"
+ENV{DEVTYPE}=="disk", ENV{MD_UUID}=="?*", SYMLINK+="disk/by-id/md-uuid-$env{MD_UUID}"
+ENV{DEVTYPE}=="disk", ENV{MD_DEVNAME}=="?*", SYMLINK+="md/$env{MD_DEVNAME}"
+ENV{DEVTYPE}=="partition", ENV{MD_NAME}=="?*", SYMLINK+="disk/by-id/md-name-$env{MD_NAME}-part%n", OPTIONS+="string_escape=replace"
+ENV{DEVTYPE}=="partition", ENV{MD_UUID}=="?*", SYMLINK+="disk/by-id/md-uuid-$env{MD_UUID}-part%n"
+ENV{DEVTYPE}=="partition", ENV{MD_DEVNAME}=="*[^0-9]", SYMLINK+="md/$env{MD_DEVNAME}%n"
+ENV{DEVTYPE}=="partition", ENV{MD_DEVNAME}=="*[0-9]", SYMLINK+="md/$env{MD_DEVNAME}p%n"
+
+IMPORT{program}="vol_id --export $tempnode"
+OPTIONS+="link_priority=100"
+OPTIONS+="watch"
+ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
+ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
+
+LABEL="md_end"
diff --git a/rules.d/80-drivers.rules b/rules.d/80-drivers.rules
new file mode 100644
index 0000000..7e13e80
--- /dev/null
+++ b/rules.d/80-drivers.rules
@@ -0,0 +1,16 @@
+# do not edit this file, it will be overwritten on update
+
+ACTION!="add", GOTO="drivers_end"
+
+DRIVER!="?*", ENV{MODALIAS}=="?*", RUN{ignore_error}+="/sbin/modprobe -b $env{MODALIAS}"
+SUBSYSTEM=="tifm", ENV{TIFM_CARD_TYPE}=="SD", RUN+="/sbin/modprobe -b tifm_sd"
+SUBSYSTEM=="tifm", ENV{TIFM_CARD_TYPE}=="MS", RUN+="/sbin/modprobe -b tifm_ms"
+SUBSYSTEM=="memstick", RUN+="/sbin/modprobe -b --all ms_block mspro_block"
+SUBSYSTEM=="mmc", RUN+="/sbin/modprobe -b mmc_block"
+SUBSYSTEM=="i2o", RUN+="/sbin/modprobe -b i2o_block"
+SUBSYSTEM=="scsi", ATTR{type}=="8", RUN+="/sbin/modprobe -b ch"
+SUBSYSTEM=="scsi", ENV{DEVTYPE}=="scsi_device", TEST!="[module/sg]", RUN+="/sbin/modprobe -b sg"
+SUBSYSTEM=="module", KERNEL=="parport_pc", RUN+="/sbin/modprobe -b ppdev"
+
+LABEL="drivers_end"
+
diff --git a/rules.d/95-udev-late.rules b/rules.d/95-udev-late.rules
new file mode 100644
index 0000000..7207081
--- /dev/null
+++ b/rules.d/95-udev-late.rules
@@ -0,0 +1,8 @@
+# do not edit this file, it will be overwritten on update
+
+# run a command on remove events
+ACTION=="remove", ENV{REMOVE_CMD}!="", RUN+="$env{REMOVE_CMD}"
+
+# event to be catched by udevmonitor
+RUN+="socket:@/org/kernel/udev/monitor"
+
-- 
1.6.0.6

--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 4/4] Fix several inst functions.
       [not found] ` <d53985b1c536e2fb845e0e3c369edd06d5018011.1236124962.git.victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2009-03-04  0:21   ` [PATCH 2/4] Get rid of some RedHat specific modules and udev rules Victor Lowther
  2009-03-04  0:21   ` [PATCH 3/4] Steal rules we need from the latest udev package Victor Lowther
@ 2009-03-04  0:21   ` Victor Lowther
  2 siblings, 0 replies; 19+ messages in thread
From: Victor Lowther @ 2009-03-04  0:21 UTC (permalink / raw)
  To: initramfs-u79uwXL29TY76Z2rM5mHXA

Move file existence checking into the individual inst functions. This makes
things a bit easier to understand and maintain.

---
 dracut-functions |   29 ++++++++++++++---------------
 1 files changed, 14 insertions(+), 15 deletions(-)

diff --git a/dracut-functions b/dracut-functions
index fbcf315..0c2437a 100755
--- a/dracut-functions
+++ b/dracut-functions
@@ -31,7 +31,9 @@ strstr() { [[ ! ${1#*$2*} = $1 ]]; }
 # $2 (optional) Name for the file on the ramdisk
 # Location of the image dir is assumed to be $initdir
 inst_simple() {
-    local src=$1 target="${initdir}${2:-$1}"
+    local src target
+    [[ -f $1 ]] || return 1
+    src=$1 target="${initdir}${2:-$1}"
     [[ -f $target ]] && return 0
     mkdir -p "${target%/*}"
     echo "Installing $src" >&2
@@ -66,7 +68,9 @@ find_binary() {
 # If the file is a binary executable, install all its
 # shared library dependencies, if any.
 inst_binary() {
-    local bin="$1" target="${2:-$1}"
+    local bin target
+    bin=$(find_binary "$1") || return 1
+    shift
     local LDSO NAME IO FILE ADDR I1 n f TLIBDIR
     [[ -f $initdir$target ]] && return 0
     # I love bash!
@@ -97,12 +101,13 @@ inst_binary() {
 	}
         inst_library "$FILE" 
     done < <(ldd $bin 2>/dev/null)
-    inst_simple "$bin" "$target"
+    inst_simple "$bin" "$@"
 }
 
 # same as above, except for shell scripts.
 # If your shell script does not start with shebang, it is not a shell script.
 inst_script() {
+    [[ -f $1 ]] || return 1
     local src=$1 target=${2:-$1} line
     read -r -n 80 line <"$src"
     [[ $line =~ '(#! *)(/[^ ]+).*' ]] || return 1
@@ -142,15 +147,8 @@ inst() {
         echo "usage: inst <file> <root> [<destination file>]"
         return 1
     fi
-    local src dest
-    src=$(find_binary "$1") || {
-	echo "Cannot find requested file $1. Exiting."
-	exit 1
-    }
-    local dest=${2:-$src}
     for x in inst_symlink inst_script inst_binary inst_simple; do
-	$x "$src" "$dest" && return 0
+	$x "$@" && return 0
     done
     return 1
 }
-- 
1.6.0.6

--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* Re: [PATCH 2/4] Get rid of some RedHat specific modules and udev rules
       [not found]     ` <1d16a0aef8ab7f83212bd12dd71908f5c1a1a2a5.1236124962.git.victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2009-03-04  0:24       ` Jeremy Katz
  0 siblings, 0 replies; 19+ messages in thread
From: Jeremy Katz @ 2009-03-04  0:24 UTC (permalink / raw)
  To: initramfs-u79uwXL29TY76Z2rM5mHXA

On Tuesday, March 03 2009, Victor Lowther said:
> They are not needed to boot with dracut, so away they go.
[snip]
> diff --git a/modules/10redhat-i18n.sh b/modules/10redhat-i18n.sh

Without loading keymaps, if you have an encrypted root device, you may
not be able to (correctly) type your passphrase.  

Jeremy
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]     ` <462be3c3cfdf24ba51bc4d1a1f66cc30b8d29d82.1236124962.git.victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2009-03-04  0:25       ` Jeremy Katz
       [not found]         ` <20090304002535.GB96609-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
  2009-03-04  0:27       ` Thiago Galesi
  1 sibling, 1 reply; 19+ messages in thread
From: Jeremy Katz @ 2009-03-04  0:25 UTC (permalink / raw)
  To: initramfs-u79uwXL29TY76Z2rM5mHXA

On Tuesday, March 03 2009, Victor Lowther said:
> This should arguably be done by importing the udev git repo as a submodule,
> but I am too lazy to figure out how to do that right now.
> 
> I suppose this could also be done by rewriting the 95udev-rules.sh module
> for each distribution, but that is something best left to the distro 
> maintainers once we acheive some sort of widespread adoption.  Until then,
> stealing rules from upstream udev seems like the most portable solution.

Stealing rules, though, means that they're almost certain to be out of
date as soon as they're present.  The right fix here is for distros not
to go off and think that they know better than upstream on how to write
udev rules.  But I'll let Kay chime in if he really wants to here ;-)

Jeremy
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]     ` <462be3c3cfdf24ba51bc4d1a1f66cc30b8d29d82.1236124962.git.victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2009-03-04  0:25       ` Jeremy Katz
@ 2009-03-04  0:27       ` Thiago Galesi
       [not found]         ` <82ecf08e0903031627p2af2ce66s8e777716eff2b823-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  1 sibling, 1 reply; 19+ messages in thread
From: Thiago Galesi @ 2009-03-04  0:27 UTC (permalink / raw)
  To: Victor Lowther; +Cc: initramfs-u79uwXL29TY76Z2rM5mHXA

I'm not sure how udev works, but do we really need ALL the rules??
Like v4l, printer, floppy!! etc

If we're going to import rules and keep it built-in, I would take only
the bare minimal

Thiago Galesi



On Tue, Mar 3, 2009 at 9:21 PM, Victor Lowther <victor.lowther-Re5JQEeQqe8@public.gmane.orgm> wrote:
> This should arguably be done by importing the udev git repo as a submodule,
> but I am too lazy to figure out how to do that right now.
>
> I suppose this could also be done by rewriting the 95udev-rules.sh module
> for each distribution, but that is something best left to the distro
> maintainers once we acheive some sort of widespread adoption.  Until then,
> stealing rules from upstream udev seems like the most portable solution.
>
> ---
>  rules.d/50-udev-default.rules           |  120 +++++++++++++++++++++++++++++++
>  rules.d/60-persistent-storage.rules     |   70 ++++++++++++++++++
>  rules.d/61-persistent-storage-edd.rules |   12 +++
>  rules.d/64-device-mapper.rules          |    4 +
>  rules.d/64-md-raid.rules                |   33 +++++++++
>  rules.d/80-drivers.rules                |   16 ++++
>  rules.d/95-udev-late.rules              |    8 ++
>  7 files changed, 263 insertions(+), 0 deletions(-)
>
> diff --git a/rules.d/50-udev-default.rules b/rules.d/50-udev-default.rules
> new file mode 100644
> index 0000000..95d82d7
> --- /dev/null
> +++ b/rules.d/50-udev-default.rules
> @@ -0,0 +1,120 @@
> +# do not edit this file, it will be overwritten on update
> +
> +SUBSYSTEM=="block", SYMLINK+="block/%M:%m"
> +SUBSYSTEM!="block", SYMLINK+="char/%M:%m"
> +
> +KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660"
> +KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660"
> +KERNEL=="ptmx",                        GROUP="tty", MODE="0666"
> +KERNEL=="tty",                 GROUP="tty", MODE="0666"
> +KERNEL=="tty[0-9]*",           GROUP="tty", MODE="0620"
> +KERNEL=="vcs|vcs[0-9]*|vcsa|vcsa[0-9]*", GROUP="tty"
> +KERNEL=="console",             MODE="0600"
> +
> +# serial
> +KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*", GROUP="dialout"
> +KERNEL=="ppp",                 MODE="0600"
> +KERNEL=="mwave",               NAME="modems/mwave", GROUP="dialout"
> +KERNEL=="hvc*|hvsi*",          GROUP="dialout"
> +
> +# mem
> +KERNEL=="null|zero|full|random|urandom", MODE="0666"
> +KERNEL=="mem|kmem|port|nvram", GROUP="kmem", MODE="0640"
> +
> +# input
> +KERNEL=="mouse*|mice|event*",  NAME="input/%k", MODE="0640"
> +KERNEL=="ts[0-9]*|uinput",     NAME="input/%k", MODE="0640"
> +KERNEL=="js[0-9]*",            NAME="input/%k", MODE="0644"
> +
> +# video4linux
> +SUBSYSTEM=="video4linux",      GROUP="video"
> +KERNEL=="vttuner*",            GROUP="video"
> +KERNEL=="vtx*|vbi*",           GROUP="video"
> +KERNEL=="winradio*",           GROUP="video"
> +
> +# graphics
> +KERNEL=="agpgart",             MODE="0600", GROUP="video"
> +KERNEL=="card[0-9]*",          NAME="dri/%k"
> +KERNEL=="pmu",                 GROUP="video"
> +KERNEL=="nvidia*|nvidiactl*",  GROUP="video"
> +SUBSYSTEM=="graphics",         GROUP="video"
> +SUBSYSTEM=="drm",              GROUP="video"
> +
> +# DVB (video)
> +SUBSYSTEM=="dvb", ENV{DVB_ADAPTER_NUM}=="?*", NAME="dvb/adapter$env{DVB_ADAPTER_NUM}/$env{DVB_DEVICE_TYPE}$env{DVB_DEVICE_NUM}", GROUP="video"
> +SUBSYSTEM=="dvb", ENV{DVB_ADAPTER_NUM}=="", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="video"
> +
> +# Firewire
> +KERNEL=="dv1394[0-9]*",                NAME="dv1394/%n", GROUP="video"
> +KERNEL=="video1394[0-9]*",     NAME="video1394/%n", GROUP="video"
> +
> +# libusb device nodes
> +SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}", MODE="0664"
> +
> +# printer
> +KERNEL=="parport[0-9]*",       GROUP="lp"
> +SUBSYSTEM=="printer",          KERNEL=="lp*", GROUP="lp"
> +SUBSYSTEM=="ppdev",            GROUP="lp"
> +SUBSYSTEM=="usb",              KERNEL=="lp*", NAME="usb/%k", SYMLINK+="usb%k", GROUP="lp"
> +KERNEL=="lp[0-9]*",            GROUP="lp"
> +KERNEL=="irlpt[0-9]*",         GROUP="lp"
> +
> +# block
> +SUBSYSTEM=="block", GROUP="disk"
> +
> +# floppy
> +KERNEL=="fd[0-9]", GROUP="floppy"
> +KERNEL=="fd[0-9]", ACTION=="add", ATTRS{cmos}=="?*", RUN+="create_floppy_devices -c -t $attr{cmos} -m %M -M 0640 -G floppy $root/%k"
> +KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="floppy", OPTIONS+="all_partitions"
> +
> +# cdrom
> +SUBSYSTEM=="block", KERNEL=="sr[0-9]*", SYMLINK+="scd%n", GROUP="cdrom"
> +SUBSYSTEM=="block", KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="cdrom", GROUP="cdrom"
> +SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", GROUP="cdrom"
> +KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/%k", GROUP="cdrom"
> +KERNEL=="pktcdvd", NAME="pktcdvd/control", GROUP="cdrom"
> +
> +# tape
> +KERNEL=="ht[0-9]*|nht[0-9]*", GROUP="tape"
> +KERNEL=="pt[0-9]*|npt[0-9]*|pht[0-9]*", GROUP="tape"
> +SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="tape"
> +
> +# block-releated
> +KERNEL=="sch[0-9]*", GROUP="disk"
> +SUBSYSTEMS=="scsi", ATTRS{type}=="0", GROUP="disk"
> +KERNEL=="pg[0-9]*", GROUP="disk"
> +KERNEL=="qft[0-9]*|nqft[0-9]*|zqft[0-9]*|nzqft[0-9]*|rawqft[0-9]*|nrawqft[0-9]*", GROUP="disk"
> +KERNEL=="rawctl", NAME="raw/rawctl", GROUP="disk"
> +SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", NAME="raw/%k", GROUP="disk"
> +SUBSYSTEM=="bsg", NAME="bsg/%k"
> +SUBSYSTEM=="aoe", NAME="etherd/%k", GROUP="disk", MODE="0220"
> +SUBSYSTEM=="aoe", KERNEL=="err", MODE="0440"
> +
> +# network
> +KERNEL=="tun",                 NAME="net/%k", MODE="0666"
> +
> +# CPU
> +KERNEL=="cpu[0-9]*",           NAME="cpu/%n/cpuid"
> +KERNEL=="msr[0-9]*",           NAME="cpu/%n/msr"
> +KERNEL=="microcode",           NAME="cpu/microcode", MODE="0600"
> +
> +# miscellaneous
> +KERNEL=="fuse",                        MODE="0666"
> +SUBSYSTEM=="rtc", DRIVERS=="rtc_cmos", SYMLINK+="rtc"
> +KERNEL=="auer[0-9]*",          NAME="usb/%k"
> +KERNEL=="hw_random",           NAME="hwrng"
> +KERNEL=="mmtimer",             MODE="0644"
> +KERNEL=="rflash[0-9]*",                MODE="0400"
> +KERNEL=="rrom[0-9]*",          MODE="0400"
> +KERNEL=="sxctl",               NAME="specialix_sxctl""
> +KERNEL=="rioctl",              NAME="specialix_rioctl"
> +KERNEL=="iowarrior[0-9]*",     NAME="usb/%k"
> +KERNEL=="hiddev[0-9]*",                NAME="usb/%k"
> +KERNEL=="legousbtower[0-9]*",  NAME="usb/%k"
> +KERNEL=="dabusb[0-9]*",                NAME="usb/%k"
> +KERNEL=="usbdpfp[0-9]*",       NAME="usb/%k"
> +KERNEL=="cpad[0-9]*",          NAME="usb/%k"
> +
> +# do not delete static device nodes
> +ACTION=="remove", NAME=="?*", TEST=="/lib/udev/devices/$name", OPTIONS+="ignore_remove"
> +ACTION=="remove", NAME=="", TEST=="/lib/udev/devices/%k", OPTIONS+="ignore_remove"
> diff --git a/rules.d/60-persistent-storage.rules b/rules.d/60-persistent-storage.rules
> new file mode 100644
> index 0000000..14bd75f
> --- /dev/null
> +++ b/rules.d/60-persistent-storage.rules
> @@ -0,0 +1,70 @@
> +# do not edit this file, it will be overwritten on update
> +
> +# persistent storage links: /dev/disk/{by-id,by-uuid,by-label,by-path}
> +# scheme based on "Linux persistent device names", 2004, Hannes Reinecke <hare-l3A5Bk7waGM@public.gmane.org>
> +
> +# forward scsi device event to corresponding block device
> +ACTION=="change", SUBSYSTEM=="scsi", ENV{DEVTYPE}=="scsi_device", TEST=="block", ATTR{block/*/uevent}="change"
> +
> +ACTION!="add|change", GOTO="persistent_storage_end"
> +SUBSYSTEM!="block", GOTO="persistent_storage_end"
> +
> +# skip rules for inappropriate block devices
> +KERNEL=="ram*|fd*|nbd*|gnbd*|dm-*|md*|btibm*", GOTO="persistent_storage_end"
> +
> +# never access non-cdrom removable ide devices, the drivers are causing event loops on open()
> +KERNEL=="hd*[!0-9]", ATTR{removable}=="1", DRIVERS=="ide-cs|ide-floppy", GOTO="persistent_storage_end"
> +KERNEL=="hd*[0-9]", ATTRS{removable}=="1", GOTO="persistent_storage_end"
> +
> +# ignore partitions that span the entire disk
> +TEST=="whole_disk", GOTO="persistent_storage_end"
> +
> +# for partitions import parent information
> +ENV{DEVTYPE}=="partition", IMPORT{parent}="ID_*"
> +
> +# by-id (hardware serial number)
> +KERNEL=="hd*[!0-9]", IMPORT{program}="ata_id --export $tempnode"
> +KERNEL=="hd*[!0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/ata-$env{ID_MODEL}_$env{ID_SERIAL}"
> +KERNEL=="hd*[0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/ata-$env{ID_MODEL}_$env{ID_SERIAL}-part%n"
> +
> +KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}!="?*", SUBSYSTEMS=="usb", IMPORT{program}="usb_id --export %p"
> +KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}!="?*", IMPORT{program}="scsi_id --export --whitelisted -d $tempnode", ENV{ID_BUS}="scsi"
> +KERNEL=="cciss*", ENV{DEVTYPE}=="disk", ENV{ID_SERIAL}!="?*", IMPORT{program}="scsi_id --export --whitelisted -d $tempnode", ENV{ID_BUS}="cciss"
> +KERNEL=="sd*|sr*|cciss*", ENV{DEVTYPE}=="disk", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
> +KERNEL=="sd*|cciss*", ENV{DEVTYPE}=="partition", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}-part%n"
> +
> +# firewire
> +KERNEL=="sd*[!0-9]|sr*", ATTRS{ieee1394_id}=="?*", SYMLINK+="disk/by-id/ieee1394-$attr{ieee1394_id}"
> +KERNEL=="sd*[0-9]", ATTRS{ieee1394_id}=="?*", SYMLINK+="disk/by-id/ieee1394-$attr{ieee1394_id}-part%n"
> +
> +# libata compat (ata-* links, like old hd* devices did create)
> +KERNEL=="sd*[!0-9]", ENV{ID_VENDOR}=="ATA", PROGRAM="ata_id $tempnode", RESULT=="?*", ENV{ID_ATA_COMPAT}="$result", SYMLINK+="disk/by-id/ata-$env{ID_ATA_COMPAT}"
> +KERNEL=="sd*[0-9]", ENV{ID_ATA_COMPAT}=="?*", SYMLINK+="disk/by-id/ata-$env{ID_ATA_COMPAT}-part%n"
> +
> +KERNEL=="mmcblk[0-9]", SUBSYSTEMS=="mmc", ATTRS{name}=="?*", ATTRS{serial}=="?*", ENV{ID_NAME}="$attr{name}", ENV{ID_SERIAL}="$attr{serial}", SYMLINK+="disk/by-id/mmc-$env{ID_NAME}_$env{ID_SERIAL}"
> +KERNEL=="mmcblk[0-9]p[0-9]", ENV{ID_NAME}=="?*", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/mmc-$env{ID_NAME}_$env{ID_SERIAL}-part%n"
> +KERNEL=="mspblk[0-9]", SUBSYSTEMS=="memstick", ATTRS{name}=="?*", ATTRS{serial}=="?*", ENV{ID_NAME}="$attr{name}", ENV{ID_SERIAL}="$attr{serial}", SYMLINK+="disk/by-id/memstick-$env{ID_NAME}_$env{ID_SERIAL}"
> +KERNEL=="mspblk[0-9]p[0-9]", ENV{ID_NAME}=="?*", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/memstick-$env{ID_NAME}_$env{ID_SERIAL}-part%n"
> +
> +# by-path (parent device path)
> +ENV{DEVTYPE}=="disk", IMPORT{program}="path_id %p"
> +ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}"
> +ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}-part%n"
> +
> +# skip unpartitioned removable media devices from drivers which do not send "change" events
> +ENV{DEVTYPE}=="disk", KERNEL!="sd*|sr*", ATTR{removable}=="1", GOTO="persistent_storage_end"
> +
> +# probe filesystem metadata of optical drives which have a media inserted
> +KERNEL=="sr*", ENV{ID_CDROM_MEDIA_TRACK_COUNT}=="?*", IMPORT{program}="vol_id --export --skip-raid --offset=$env{ID_CDROM_MEDIA_SESSION_LAST_OFFSET} $tempnode"
> +
> +# probe filesystem metadata of disks
> +KERNEL!="sr*", IMPORT{program}="vol_id --export $tempnode"
> +
> +# watch for future changes
> +KERNEL!="sr*", OPTIONS+="watch"
> +
> +# by-label/by-uuid links (filesystem metadata)
> +ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
> +ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
> +
> +LABEL="persistent_storage_end"
> diff --git a/rules.d/61-persistent-storage-edd.rules b/rules.d/61-persistent-storage-edd.rules
> new file mode 100644
> index 0000000..bd020b7
> --- /dev/null
> +++ b/rules.d/61-persistent-storage-edd.rules
> @@ -0,0 +1,12 @@
> +# do not edit this file, it will be overwritten on update
> +
> +ACTION!="add|change", GOTO="persistent_storage_edd_end"
> +SUBSYSTEM!="block", GOTO="persistent_storage_edd_end"
> +KERNEL!="sd*|hd*", GOTO="persistent_storage_edd_end"
> +
> +# BIOS Enhanced Disk Device
> +ENV{DEVTYPE}=="disk", IMPORT{program}="edd_id --export $tempnode"
> +ENV{DEVTYPE}=="disk", ENV{ID_EDD}=="?*", SYMLINK+="disk/by-id/edd-$env{ID_EDD}"
> +ENV{DEVTYPE}=="partition", ENV{ID_EDD}=="?*", SYMLINK+="disk/by-id/edd-$env{ID_EDD}-part%n"
> +
> +LABEL="persistent_storage_edd_end"
> diff --git a/rules.d/64-device-mapper.rules b/rules.d/64-device-mapper.rules
> new file mode 100644
> index 0000000..8154ef3
> --- /dev/null
> +++ b/rules.d/64-device-mapper.rules
> @@ -0,0 +1,4 @@
> +# do not edit this file, it will be overwritten on update
> +
> +KERNEL=="device-mapper",       NAME="mapper/control"
> +
> diff --git a/rules.d/64-md-raid.rules b/rules.d/64-md-raid.rules
> new file mode 100644
> index 0000000..abb029c
> --- /dev/null
> +++ b/rules.d/64-md-raid.rules
> @@ -0,0 +1,33 @@
> +# do not edit this file, it will be overwritten on update
> +
> +SUBSYSTEM!="block", GOTO="md_end"
> +ACTION!="add|change", GOTO="md_end"
> +
> +# import data from a raid member and activate it
> +#ENV{ID_FS_TYPE}=="linux_raid_member", IMPORT{program}="/sbin/mdadm --examine --export $tempnode", RUN+="/sbin/mdadm --incremental $env{DEVNAME}"
> +# import data from a raid set
> +KERNEL!="md*", GOTO="md_end"
> +
> +# container devices have a metadata version of e.g. 'external:ddf' and
> +# never leave state 'inactive'
> +ATTR{md/metadata_version}=="external:[A-Za-z]*", ATTR{md/array_state}=="inactive", GOTO="md_ignore_state"
> +TEST!="md/array_state", GOTO="md_end"
> +ATTR{md/array_state}=="|clear|inactive", GOTO="md_end"
> +LABEL="md_ignore_state"
> +
> +IMPORT{program}="/sbin/mdadm --detail --export $tempnode"
> +ENV{DEVTYPE}=="disk", ENV{MD_NAME}=="?*", SYMLINK+="disk/by-id/md-name-$env{MD_NAME}", OPTIONS+="string_escape=replace"
> +ENV{DEVTYPE}=="disk", ENV{MD_UUID}=="?*", SYMLINK+="disk/by-id/md-uuid-$env{MD_UUID}"
> +ENV{DEVTYPE}=="disk", ENV{MD_DEVNAME}=="?*", SYMLINK+="md/$env{MD_DEVNAME}"
> +ENV{DEVTYPE}=="partition", ENV{MD_NAME}=="?*", SYMLINK+="disk/by-id/md-name-$env{MD_NAME}-part%n", OPTIONS+="string_escape=replace"
> +ENV{DEVTYPE}=="partition", ENV{MD_UUID}=="?*", SYMLINK+="disk/by-id/md-uuid-$env{MD_UUID}-part%n"
> +ENV{DEVTYPE}=="partition", ENV{MD_DEVNAME}=="*[^0-9]", SYMLINK+="md/$env{MD_DEVNAME}%n"
> +ENV{DEVTYPE}=="partition", ENV{MD_DEVNAME}=="*[0-9]", SYMLINK+="md/$env{MD_DEVNAME}p%n"
> +
> +IMPORT{program}="vol_id --export $tempnode"
> +OPTIONS+="link_priority=100"
> +OPTIONS+="watch"
> +ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
> +ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
> +
> +LABEL="md_end"
> diff --git a/rules.d/80-drivers.rules b/rules.d/80-drivers.rules
> new file mode 100644
> index 0000000..7e13e80
> --- /dev/null
> +++ b/rules.d/80-drivers.rules
> @@ -0,0 +1,16 @@
> +# do not edit this file, it will be overwritten on update
> +
> +ACTION!="add", GOTO="drivers_end"
> +
> +DRIVER!="?*", ENV{MODALIAS}=="?*", RUN{ignore_error}+="/sbin/modprobe -b $env{MODALIAS}"
> +SUBSYSTEM=="tifm", ENV{TIFM_CARD_TYPE}=="SD", RUN+="/sbin/modprobe -b tifm_sd"
> +SUBSYSTEM=="tifm", ENV{TIFM_CARD_TYPE}=="MS", RUN+="/sbin/modprobe -b tifm_ms"
> +SUBSYSTEM=="memstick", RUN+="/sbin/modprobe -b --all ms_block mspro_block"
> +SUBSYSTEM=="mmc", RUN+="/sbin/modprobe -b mmc_block"
> +SUBSYSTEM=="i2o", RUN+="/sbin/modprobe -b i2o_block"
> +SUBSYSTEM=="scsi", ATTR{type}=="8", RUN+="/sbin/modprobe -b ch"
> +SUBSYSTEM=="scsi", ENV{DEVTYPE}=="scsi_device", TEST!="[module/sg]", RUN+="/sbin/modprobe -b sg"
> +SUBSYSTEM=="module", KERNEL=="parport_pc", RUN+="/sbin/modprobe -b ppdev"
> +
> +LABEL="drivers_end"
> +
> diff --git a/rules.d/95-udev-late.rules b/rules.d/95-udev-late.rules
> new file mode 100644
> index 0000000..7207081
> --- /dev/null
> +++ b/rules.d/95-udev-late.rules
> @@ -0,0 +1,8 @@
> +# do not edit this file, it will be overwritten on update
> +
> +# run a command on remove events
> +ACTION=="remove", ENV{REMOVE_CMD}!="", RUN+="$env{REMOVE_CMD}"
> +
> +# event to be catched by udevmonitor
> +RUN+="socket:@/org/kernel/udev/monitor"
> +
> --
> 1.6.0.6
>
> --
> To unsubscribe from this list: send the line "unsubscribe initramfs" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>



-- 
-
Thiago Galesi
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]         ` <82ecf08e0903031627p2af2ce66s8e777716eff2b823-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2009-03-04  0:56           ` Victor Lowther
  0 siblings, 0 replies; 19+ messages in thread
From: Victor Lowther @ 2009-03-04  0:56 UTC (permalink / raw)
  To: Thiago Galesi; +Cc: initramfs-u79uwXL29TY76Z2rM5mHXA

On Tue, 2009-03-03 at 21:27 -0300, Thiago Galesi wrote:
> I'm not sure how udev works, but do we really need ALL the rules??
> Like v4l, printer, floppy!! etc

We probably don't, but I really do not want to get into the business of
maintaining our own dracut-specific set of rules.  These are stolen
directly from the udev git tree without any editing whatsoever.  The
goal would be to import the udev got tree as a submodule of the dracut
udev tree and copy them with cp every time dracut was rebuilt, but I am
too lazy to learn how to do that right now.

> If we're going to import rules and keep it built-in, I would take only
> the bare minimal

In terms of files, I think this is pretty close to it. I am happy to be
proven wrong, however. :)

In terms of lines, there is certainly some fat to be trimmed, but I
don't think we should be in the business of hand-crafting rules beyond
the minimum needed to support cryptoroot, lvm, and networking.

> Thiago Galesi
-- 
Victor Lowther
RHCE# 805008539634727
LPIC-2# LPI000140019

--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]         ` <20090304002535.GB96609-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
@ 2009-03-04  1:16           ` Victor Lowther
       [not found]             ` <1236129369.6500.18.camel-76q0VzFBGGr21HsLBtNmTckMGDeJXHgy@public.gmane.org>
  0 siblings, 1 reply; 19+ messages in thread
From: Victor Lowther @ 2009-03-04  1:16 UTC (permalink / raw)
  To: Jeremy Katz; +Cc: initramfs-u79uwXL29TY76Z2rM5mHXA

On Tue, 2009-03-03 at 19:25 -0500, Jeremy Katz wrote:
> On Tuesday, March 03 2009, Victor Lowther said:
> > This should arguably be done by importing the udev git repo as a submodule,
> > but I am too lazy to figure out how to do that right now.
> > 
> > I suppose this could also be done by rewriting the 95udev-rules.sh module
> > for each distribution, but that is something best left to the distro 
> > maintainers once we acheive some sort of widespread adoption.  Until then,
> > stealing rules from upstream udev seems like the most portable solution.
> 
> Stealing rules, though, means that they're almost certain to be out of
> date as soon as they're present.  

Yep.  This is intended to be a quick and dirty hack for those of us who
prefer not to delve into the nuances of how each distro does things.  

Out of date does not mean as much to the initramfs, IMAO -- as long as
we can find and mount root, it does not matter how out of date the rules
are.

> The right fix here is for distros not
> to go off and think that they know better than upstream on how to write
> udev rules.  But I'll let Kay chime in if he really wants to here ;-)

Mmmm... sweet scent of politics.  I get the feeling that many kilobytes
have been spent flaming^Wdiscussing this topic. 

> Jeremy
> --
> To unsubscribe from this list: send the line "unsubscribe initramfs" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
-- 
Victor Lowther
RHCE# 805008539634727
LPIC-2# LPI000140019

--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]             ` <1236129369.6500.18.camel-76q0VzFBGGr21HsLBtNmTckMGDeJXHgy@public.gmane.org>
@ 2009-03-04 10:12               ` Kay Sievers
       [not found]                 ` <ac3eb2510903040212m5d68d812kbce03d831e8c3d12-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 19+ messages in thread
From: Kay Sievers @ 2009-03-04 10:12 UTC (permalink / raw)
  To: Victor Lowther; +Cc: Jeremy Katz, initramfs-u79uwXL29TY76Z2rM5mHXA

On Wed, Mar 4, 2009 at 02:16, Victor Lowther <victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> On Tue, 2009-03-03 at 19:25 -0500, Jeremy Katz wrote:
>> On Tuesday, March 03 2009, Victor Lowther said:
>> > This should arguably be done by importing the udev git repo as a submodule,
>> > but I am too lazy to figure out how to do that right now.
>> >
>> > I suppose this could also be done by rewriting the 95udev-rules.sh module
>> > for each distribution, but that is something best left to the distro
>> > maintainers once we acheive some sort of widespread adoption.  Until then,
>> > stealing rules from upstream udev seems like the most portable solution.
>>
>> Stealing rules, though, means that they're almost certain to be out of
>> date as soon as they're present.

Exactly. And they will break horribly next month, when we e.g. switch
from vol_id to blkid.

> Yep.  This is intended to be a quick and dirty hack for those of us who
> prefer not to delve into the nuances of how each distro does things.

Don't do that. There is no need to know how "distros" work, you only
need to know about Debian. :)

> Out of date does not mean as much to the initramfs, IMAO -- as long as
> we can find and mount root, it does not matter how out of date the rules
> are.

Oh, no. That will never work. The main udev rules cannot be
disconnected from the udev daemon and the udev tools in /lib/udev/,
they are tight together and have strong dependencies in the shipped
tools and the tool calling options. That's why the tools are in an
"application private directory" and not in /sbin. You will end up with
several versions of the rules in the dracut repo, and need to select
them based on the installed udev version. The current default udev
rules will not even work correctly on the "ancient" udev package
Debian ships today.

>> The right fix here is for distros not
>> to go off and think that they know better than upstream on how to write
>> udev rules.  But I'll let Kay chime in if he really wants to here ;-)

All other distros work together and ship a set of rules which is the
result of a merge of all the distro stuff. They all ship an identical
setup today. There is only one left, which thinks it can do better,
and I would not like to see broken workarounds for everybody in the
dracut repo. It should be a "Debian dracut module to work around their
weird idea of upstream", and not a "pain to maintain default" for all
other users. :)

> Mmmm... sweet scent of politics.  I get the feeling that many kilobytes
> have been spent flaming^Wdiscussing this topic.

Yeah, it seems hard for some kids to share their toys. :) But it's
pretty much over, there is not much to discuss anymore. We all ship
the same stuff, and share the same bugs. If you want "Debian" use
Ubuntu. It's part of the upstream development, ships recent versions
which other stuff can develop against, and can depend on. :)

Thanks,
Kay
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]                 ` <ac3eb2510903040212m5d68d812kbce03d831e8c3d12-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2009-03-04 11:33                   ` Victor Lowther
       [not found]                     ` <1236166408.6500.37.camel-76q0VzFBGGr21HsLBtNmTckMGDeJXHgy@public.gmane.org>
  0 siblings, 1 reply; 19+ messages in thread
From: Victor Lowther @ 2009-03-04 11:33 UTC (permalink / raw)
  To: Kay Sievers; +Cc: Jeremy Katz, initramfs-u79uwXL29TY76Z2rM5mHXA

On Wed, 2009-03-04 at 11:12 +0100, Kay Sievers wrote:
> On Wed, Mar 4, 2009 at 02:16, Victor Lowther <victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> > On Tue, 2009-03-03 at 19:25 -0500, Jeremy Katz wrote
> >> Stealing rules, though, means that they're almost certain to be out of
> >> date as soon as they're present.
> 
> Exactly. And they will break horribly next month, when we e.g. switch
> from vol_id to blkid.
> 
> > Yep.  This is intended to be a quick and dirty hack for those of us who
> > prefer not to delve into the nuances of how each distro does things.
> 
> Don't do that. There is no need to know how "distros" work, you only
> need to know about Debian. :)
> 
> > Out of date does not mean as much to the initramfs, IMAO -- as long as
> > we can find and mount root, it does not matter how out of date the rules
> > are.
> The current default udev
> rules will not even work correctly on the "ancient" udev package
> Debian ships today.

Ah,  I was not aware of that little tidbit of information.

inst_rules (in this patch series, at least) will try to grab rules from
the host system before using the ones I stole from udev upstream.  That
did not work on Debian due to their having a
different-enough-to-be-infuriating naming scheme, and I did not feel
like spending enough time examining their scheme to figure out the
"right" rules to grab.

> All other distros work together and ship a set of rules which is the
> result of a merge of all the distro stuff. They all ship an identical
> setup today. There is only one left, which thinks it can do better,
> and I would not like to see broken workarounds for everybody in the
> dracut repo. It should be a "Debian dracut module to work around their
> weird idea of upstream", and not a "pain to maintain default" for all
> other users. :)

Fair enough. Consider this patch withdrawn.

> > Mmmm... sweet scent of politics.  I get the feeling that many kilobytes
> > have been spent flaming^Wdiscussing this topic.
> 
> Yeah, it seems hard for some kids to share their toys. :) But it's
> pretty much over, there is not much to discuss anymore. We all ship
> the same stuff, and share the same bugs. If you want "Debian" use
> Ubuntu. It's part of the upstream development, ships recent versions
> which other stuff can develop against, and can depend on. :)

Good to know, but I think I will stick with Fedora for now.  It seems
like we have enough patches floating around on the mailing list right
now to have a good chance at making everything but Debian work without
too many distro-specific workarounds (or, at least we will once
switch_root is rewritten in C and packaged into util-linux)

> Thanks,
> Kay
-- 
Victor Lowther
RHCE# 805008539634727
LPIC-2# LPI000140019

--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]                     ` <1236166408.6500.37.camel-76q0VzFBGGr21HsLBtNmTckMGDeJXHgy@public.gmane.org>
@ 2009-03-04 12:08                       ` Kay Sievers
       [not found]                         ` <ac3eb2510903040408w299b349aj791a2f9e0d154b9a-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 19+ messages in thread
From: Kay Sievers @ 2009-03-04 12:08 UTC (permalink / raw)
  To: Victor Lowther; +Cc: Jeremy Katz, initramfs-u79uwXL29TY76Z2rM5mHXA

On Wed, Mar 4, 2009 at 12:33, Victor Lowther <victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> On Wed, 2009-03-04 at 11:12 +0100, Kay Sievers wrote:

>> > Mmmm... sweet scent of politics.  I get the feeling that many kilobytes
>> > have been spent flaming^Wdiscussing this topic.
>>
>> Yeah, it seems hard for some kids to share their toys. :) But it's
>> pretty much over, there is not much to discuss anymore. We all ship
>> the same stuff, and share the same bugs. If you want "Debian" use
>> Ubuntu. It's part of the upstream development, ships recent versions
>> which other stuff can develop against, and can depend on. :)
>
> Good to know, but I think I will stick with Fedora for now.

Yeah, sorry, "you" did not mean you. :)

> It seems
> like we have enough patches floating around on the mailing list right
> now to have a good chance at making everything but Debian work without
> too many distro-specific workarounds

Sounds fine. After the next sync, and if we can resolve the libexec
thing, I'll make it work on SUSE.

> (or, at least we will once
> switch_root is rewritten in C and packaged into util-linux)

Does the tool already exist somewhere so that it can be merged? Is it
the busybox one?
Did someone send something Karel already?

Thanks,
Kay
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]                         ` <ac3eb2510903040408w299b349aj791a2f9e0d154b9a-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2009-03-04 12:18                           ` Thiago Galesi
       [not found]                             ` <82ecf08e0903040418v23e68261le6c2a05f032a9b31-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  2009-03-04 14:06                           ` Kay Sievers
  1 sibling, 1 reply; 19+ messages in thread
From: Thiago Galesi @ 2009-03-04 12:18 UTC (permalink / raw)
  To: Kay Sievers; +Cc: Victor Lowther, Jeremy Katz, initramfs-u79uwXL29TY76Z2rM5mHXA

>> (or, at least we will once
>> switch_root is rewritten in C and packaged into util-linux)
>
> Does the tool already exist somewhere so that it can be merged? Is it
> the busybox one?
> Did someone send something Karel already?

I remember seeing something in dracut mentioning pages: "The code for
the replacement of this currently lives at
http://pjones.fedorapeople.org/mkstart/usr/lib/mkstart/switchroot.c "

I'm not sure this could be used, but it would be good to have
something merged to hack already ;)

-- 
-
Thiago Galesi
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]                         ` <ac3eb2510903040408w299b349aj791a2f9e0d154b9a-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  2009-03-04 12:18                           ` Thiago Galesi
@ 2009-03-04 14:06                           ` Kay Sievers
       [not found]                             ` <ac3eb2510903040606j63ed9992r273b97efeb9a6e73-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  1 sibling, 1 reply; 19+ messages in thread
From: Kay Sievers @ 2009-03-04 14:06 UTC (permalink / raw)
  To: Victor Lowther; +Cc: Jeremy Katz, initramfs-u79uwXL29TY76Z2rM5mHXA

On Wed, Mar 4, 2009 at 13:08, Kay Sievers <kay.sievers-tD+1rO4QERM@public.gmane.org> wrote:
> On Wed, Mar 4, 2009 at 12:33, Victor Lowther <victor.lowther-Re5JQEeQqe8@public.gmane.orgm> wrote:
>> On Wed, 2009-03-04 at 11:12 +0100, Kay Sievers wrote:
>
>>> > Mmmm... sweet scent of politics.  I get the feeling that many kilobytes
>>> > have been spent flaming^Wdiscussing this topic.
>>>
>>> Yeah, it seems hard for some kids to share their toys. :) But it's
>>> pretty much over, there is not much to discuss anymore. We all ship
>>> the same stuff, and share the same bugs. If you want "Debian" use
>>> Ubuntu. It's part of the upstream development, ships recent versions
>>> which other stuff can develop against, and can depend on. :)
>>
>> Good to know, but I think I will stick with Fedora for now.
>
> Yeah, sorry, "you" did not mean you. :)
>
>> It seems
>> like we have enough patches floating around on the mailing list right
>> now to have a good chance at making everything but Debian work without
>> too many distro-specific workarounds
>
> Sounds fine. After the next sync, and if we can resolve the libexec
> thing, I'll make it work on SUSE.

Here are the results of a quick try, without digging into it:

These files are a Fedora invention, and the problem should be resolved
differently:
  cat: /lib/modules/2.6.27.10-2-default/modules.block: No such file or directory
  cat: /lib/modules/2.6.27.10-2-default/modules.block: No such file or directory
  cat: /lib/modules/2.6.27.10-2-default/modules.drm: No such file or directory

This does not exist, it's in /usr/share/terminfo/ here. Maybe it
should be fixed here?
  find: `/lib/terminfo': No such file or directory

This does not exist here, seems Fedora specific, and dracut hangs in
an endless loop:
  Installing /lib/udev/console_*
  cp: cannot stat `/lib/udev/console_*': No such file or directory
  Installing /lib/udev/console_*
  cp: cannot stat `/lib/udev/console_*': No such file or directory
  ./dracut-functions: line 107: /lib/udev/console_*: No such file or directory
  ...

This needs a "-p":
  mkdir /usr/libexec/dracut/rules.d
  mkdir: cannot create directory `/usr/libexec/dracut/rules.d': File exists

Thanks,
Kay
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]                             ` <ac3eb2510903040606j63ed9992r273b97efeb9a6e73-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2009-03-04 14:17                               ` Victor Lowther
  0 siblings, 0 replies; 19+ messages in thread
From: Victor Lowther @ 2009-03-04 14:17 UTC (permalink / raw)
  To: Kay Sievers
  Cc: Jeremy Katz, initramfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org

On Mar 4, 2009, at 8:06 AM, Kay Sievers <kay.sievers-tD+1rO4QERM@public.gmane.org> wrote:

> On Wed, Mar 4, 2009 at 13:08, Kay Sievers <kay.sievers-tD+1rO4QERM@public.gmane.org>  
> wrote:
>> On Wed, Mar 4, 2009 at 12:33, Victor Lowther <victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org 
>> > wrote:
>>> On Wed, 2009-03-04 at 11:12 +0100, Kay Sievers wrote:
>>
>>>>> Mmmm... sweet scent of politics.  I get the feeling that many  
>>>>> kilobytes
>>>>> have been spent flaming^Wdiscussing this topic.
>>>>
>>>> Yeah, it seems hard for some kids to share their toys. :) But it's
>>>> pretty much over, there is not much to discuss anymore. We all ship
>>>> the same stuff, and share the same bugs. If you want "Debian" use
>>>> Ubuntu. It's part of the upstream development, ships recent  
>>>> versions
>>>> which other stuff can develop against, and can depend on. :)
>>>
>>> Good to know, but I think I will stick with Fedora for now.
>>
>> Yeah, sorry, "you" did not mean you. :)
>>
>>> It seems
>>> like we have enough patches floating around on the mailing list  
>>> right
>>> now to have a good chance at making everything but Debian work  
>>> without
>>> too many distro-specific workarounds
>>
>> Sounds fine. After the next sync, and if we can resolve the libexec
>> thing, I'll make it work on SUSE.
>
> Here are the results of a quick try, without digging into it:
>
> These files are a Fedora invention, and the problem should be resolved
> differently:
>  cat: /lib/modules/2.6.27.10-2-default/modules.block: No such file  
> or directory
>  cat: /lib/modules/2.6.27.10-2-default/modules.block: No such file  
> or directory
>  cat: /lib/modules/2.6.27.10-2-default/modules.drm: No such file or  
> directory

The first patch in this series should take care of that.

> This does not exist, it's in /usr/share/terminfo/ here. Maybe it
> should be fixed here?
>  find: `/lib/terminfo': No such file or directory

Should we even bother with terminfo if we are not including debugging  
stuff? Will cryptsetup work without it?

> This does not exist here, seems Fedora specific, and dracut hangs in
> an endless loop:
>  Installing /lib/udev/console_*
>  cp: cannot stat `/lib/udev/console_*': No such file or directory
>  Installing /lib/udev/console_*
>  cp: cannot stat `/lib/udev/console_*': No such file or directory
>  ./dracut-functions: line 107: /lib/udev/console_*: No such file or  
> directory
>  ...

The second patch in this series should take care of this.

>
> This needs a "-p":
>  mkdir /usr/libexec/dracut/rules.d
>  mkdir: cannot create directory `/usr/libexec/dracut/rules.d': File  
> exists

There are a few patches floating around on the list that take care of  
this.

>
> Thanks,
> Kay
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]                             ` <82ecf08e0903040418v23e68261le6c2a05f032a9b31-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2009-03-06  9:33                               ` Karel Zak
       [not found]                                 ` <20090306093301.GB3301-sHeGUpI7y9L/9pzu0YdTqQ@public.gmane.org>
  0 siblings, 1 reply; 19+ messages in thread
From: Karel Zak @ 2009-03-06  9:33 UTC (permalink / raw)
  To: Thiago Galesi
  Cc: Kay Sievers, Victor Lowther, Jeremy Katz,
	initramfs-u79uwXL29TY76Z2rM5mHXA, Peter Jones


 [ CC to Peter Jones ]

On Wed, Mar 04, 2009 at 09:18:35AM -0300, Thiago Galesi wrote:
> I remember seeing something in dracut mentioning pages: "The code for
> the replacement of this currently lives at
> http://pjones.fedorapeople.org/mkstart/usr/lib/mkstart/switchroot.c "
> 
> I'm not sure this could be used, but it would be good to have
> something merged to hack already ;)

From my INBOX (private discussion between DaveJ and PJones, CC to me):

  On Mon, Feb 02, 2009 at 04:31:48PM -0500, Peter Jones wrote:
  I think http://pjones.fedorapeople.org/switchroot.c is actually the latest version.
  As a warning, I haven't actually tested past building it.

Maybe we can start to use this version and improve it.

    Karel

-- 
 Karel Zak  <kzak-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]                                 ` <20090306093301.GB3301-sHeGUpI7y9L/9pzu0YdTqQ@public.gmane.org>
@ 2009-03-06 10:17                                   ` Kay Sievers
       [not found]                                     ` <ac3eb2510903060217l1866919ag17b778e58cadb58a-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 19+ messages in thread
From: Kay Sievers @ 2009-03-06 10:17 UTC (permalink / raw)
  To: Karel Zak
  Cc: Thiago Galesi, Victor Lowther, Jeremy Katz,
	initramfs-u79uwXL29TY76Z2rM5mHXA, Peter Jones

On Fri, Mar 6, 2009 at 10:33, Karel Zak <kzak-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> wrote:
> On Wed, Mar 04, 2009 at 09:18:35AM -0300, Thiago Galesi wrote:
>> I remember seeing something in dracut mentioning pages: "The code for
>> the replacement of this currently lives at
>> http://pjones.fedorapeople.org/mkstart/usr/lib/mkstart/switchroot.c "
>>
>> I'm not sure this could be used, but it would be good to have
>> something merged to hack already ;)
>
> From my INBOX (private discussion between DaveJ and PJones, CC to me):
>
>  On Mon, Feb 02, 2009 at 04:31:48PM -0500, Peter Jones wrote:
>  I think http://pjones.fedorapeople.org/switchroot.c is actually the latest version.
>  As a warning, I haven't actually tested past building it.
>
> Maybe we can start to use this version and improve it.

This one, or the one in Harald's dracut repo, or the one from busybox,
or the one from klibc, they should work fine. I guess the binary
should live in the dracut repo, and should be installed in
/usr/lib/dracut/*, as it is not useful for anything else, I expect. Or
is there any possible other user?

Kay
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]                                     ` <ac3eb2510903060217l1866919ag17b778e58cadb58a-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2009-03-06 10:57                                       ` Harald Hoyer
  2009-03-06 15:36                                       ` maximilian attems
  1 sibling, 0 replies; 19+ messages in thread
From: Harald Hoyer @ 2009-03-06 10:57 UTC (permalink / raw)
  To: initramfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org

Kay Sievers wrote:
> On Fri, Mar 6, 2009 at 10:33, Karel Zak <kzak-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> wrote:
>> On Wed, Mar 04, 2009 at 09:18:35AM -0300, Thiago Galesi wrote:
>>> I remember seeing something in dracut mentioning pages: "The code for
>>> the replacement of this currently lives at
>>> http://pjones.fedorapeople.org/mkstart/usr/lib/mkstart/switchroot.c "
>>>
>>> I'm not sure this could be used, but it would be good to have
>>> something merged to hack already ;)
>> From my INBOX (private discussion between DaveJ and PJones, CC to me):
>>
>>  On Mon, Feb 02, 2009 at 04:31:48PM -0500, Peter Jones wrote:
>>  I think http://pjones.fedorapeople.org/switchroot.c is actually the latest version.
>>  As a warning, I haven't actually tested past building it.
>>
>> Maybe we can start to use this version and improve it.
> 
> This one, or the one in Harald's dracut repo, or the one from busybox,
> or the one from klibc, they should work fine. I guess the binary
> should live in the dracut repo, and should be installed in
> /usr/lib/dracut/*, as it is not useful for anything else, I expect. Or
> is there any possible other user?
> 
> Kay

I took this switchroot.c, replaced my switch_root.c with it and fixed it, so 
that it works for me.


http://git.surfsite.org/git/gitweb.cgi?p=dracut.git;a=blob;f=switch_root.c;h=638a66379cc2aebd78270487be77f7d67b058e12;hb=2394813bf3afd455796e076802c183324f2f1d65
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 3/4] Steal rules we need from the latest udev package.
       [not found]                                     ` <ac3eb2510903060217l1866919ag17b778e58cadb58a-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  2009-03-06 10:57                                       ` Harald Hoyer
@ 2009-03-06 15:36                                       ` maximilian attems
  1 sibling, 0 replies; 19+ messages in thread
From: maximilian attems @ 2009-03-06 15:36 UTC (permalink / raw)
  To: Kay Sievers
  Cc: Karel Zak, Thiago Galesi, Victor Lowther, Jeremy Katz,
	initramfs-u79uwXL29TY76Z2rM5mHXA, Peter Jones

On Fri, 06 Mar 2009, Kay Sievers wrote:

> On Fri, Mar 6, 2009 at 10:33, Karel Zak <kzak-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> wrote:
> > On Wed, Mar 04, 2009 at 09:18:35AM -0300, Thiago Galesi wrote:
> >> I remember seeing something in dracut mentioning pages: "The code for
> >> the replacement of this currently lives at
> >> http://pjones.fedorapeople.org/mkstart/usr/lib/mkstart/switchroot.c "
> >>
> >> I'm not sure this could be used, but it would be good to have
> >> something merged to hack already ;)
> >
> > From my INBOX (private discussion between DaveJ and PJones, CC to me):
> >
> >  On Mon, Feb 02, 2009 at 04:31:48PM -0500, Peter Jones wrote:
> >  I think http://pjones.fedorapeople.org/switchroot.c is actually the latest version.
> >  As a warning, I haven't actually tested past building it.
> >
> > Maybe we can start to use this version and improve it.
> 
> This one, or the one in Harald's dracut repo, or the one from busybox,
> or the one from klibc, they should work fine. I guess the binary
> should live in the dracut repo, and should be installed in
> /usr/lib/dracut/*, as it is not useful for anything else, I expect. Or
> is there any possible other user?

run-init.c from klibc sees realworld usage:
git clone git://git.kernel.org/pub/scm/libs/klibc/klibc.git
cd klibc/usr/kinit/run-init/


-- 
maks
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2009-03-06 15:36 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-04  0:21 [PATCH 1/4] Modify instmods to not rely on the existence of modules.* files Victor Lowther
     [not found] ` <d53985b1c536e2fb845e0e3c369edd06d5018011.1236124962.git.victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2009-03-04  0:21   ` [PATCH 2/4] Get rid of some RedHat specific modules and udev rules Victor Lowther
     [not found]     ` <1d16a0aef8ab7f83212bd12dd71908f5c1a1a2a5.1236124962.git.victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2009-03-04  0:24       ` Jeremy Katz
2009-03-04  0:21   ` [PATCH 3/4] Steal rules we need from the latest udev package Victor Lowther
     [not found]     ` <462be3c3cfdf24ba51bc4d1a1f66cc30b8d29d82.1236124962.git.victor.lowther-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2009-03-04  0:25       ` Jeremy Katz
     [not found]         ` <20090304002535.GB96609-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2009-03-04  1:16           ` Victor Lowther
     [not found]             ` <1236129369.6500.18.camel-76q0VzFBGGr21HsLBtNmTckMGDeJXHgy@public.gmane.org>
2009-03-04 10:12               ` Kay Sievers
     [not found]                 ` <ac3eb2510903040212m5d68d812kbce03d831e8c3d12-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-03-04 11:33                   ` Victor Lowther
     [not found]                     ` <1236166408.6500.37.camel-76q0VzFBGGr21HsLBtNmTckMGDeJXHgy@public.gmane.org>
2009-03-04 12:08                       ` Kay Sievers
     [not found]                         ` <ac3eb2510903040408w299b349aj791a2f9e0d154b9a-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-03-04 12:18                           ` Thiago Galesi
     [not found]                             ` <82ecf08e0903040418v23e68261le6c2a05f032a9b31-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-03-06  9:33                               ` Karel Zak
     [not found]                                 ` <20090306093301.GB3301-sHeGUpI7y9L/9pzu0YdTqQ@public.gmane.org>
2009-03-06 10:17                                   ` Kay Sievers
     [not found]                                     ` <ac3eb2510903060217l1866919ag17b778e58cadb58a-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-03-06 10:57                                       ` Harald Hoyer
2009-03-06 15:36                                       ` maximilian attems
2009-03-04 14:06                           ` Kay Sievers
     [not found]                             ` <ac3eb2510903040606j63ed9992r273b97efeb9a6e73-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-03-04 14:17                               ` Victor Lowther
2009-03-04  0:27       ` Thiago Galesi
     [not found]         ` <82ecf08e0903031627p2af2ce66s8e777716eff2b823-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-03-04  0:56           ` Victor Lowther
2009-03-04  0:21   ` [PATCH 4/4] Fix several inst functions Victor Lowther

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.