Skip to contentSkip to conversation

udev.rules.devfs + symlinks & a question

DISCUSSION Svetoslav Slavtchev 5 participants 42 messages Dec 10, 2003 – Dec 17, 2003 Kbuild

lore
Share & tools
lore
#0 lore raw

Hi,

udev_bk is looking really great :-)
great work , isn't it time for a 0.009 or 0.1 release?

let's start with the question

i'm still missing a number of devices, how should i get them in /udev ? these are the raw , pty and pts devices

also does anyone have links to the patches that add sound support ?

attached is my udev.rules,
which brings me directory structure almost(completely?) equivelent to the devfs one, except that some devices are still missing
( tree /udev == tree-udev.txt, missing entries from /dev == tree-dev.txt )

and i'm not sure how can i distinguish a cd drive from a hard drive

and how can i construct the /dev/ide/cd , /dev/ide/hd and /dev/discs/ directories

and there is a spelling issue either in devfs or -D :-) according to devfs hole disks are named "disc"
according to -D they are named "disk"
to me the second is more correct, but as it was added just for devfs compatibility it should be probably changed to what devfs use "disc"

thanks for your great work

best,

svetljo

Signature · 2 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net

# There are a number of modifiers that are allowed to be used in the # NAME or PROGRAM fields.
# They provide the following subsitutions:
# %n - the "kernel number" of the device.
# for example, 'sda3' has a "kernel number" of '3'
# %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 return value for the CALLOUT program (note, this doesn't work within
# the PROGRAM field for the obvious reason.)
# %D - use the devfs style disk name for this device.
# For partitions, this will result in 'part%n'
# If this is not a partition, it will result in 'disk'
#

NUMBER, BUS="ide", id="0.0", NAME="ide/host0/bus0/target0/lun0/%D", SYMLINK="hda%n" NUMBER, BUS="ide", id="0.1", NAME="ide/host0/bus0/target1/lun0/%D", SYMLINK="hdb%n" NUMBER, BUS="ide", id="1.0", NAME="ide/host0/bus1/target0/lun0/%D", SYMLINK="hdc%n" NUMBER, BUS="ide", id="1.1", NAME="ide/host0/bus1/target1/lun0/%D", SYMLINK="hdd%n" NUMBER, BUS="ide", id="2.0", NAME="ide/host2/bus0/target0/lun0/%D", SYMLINK="hde%n" NUMBER, BUS="ide", id="2.1", NAME="ide/host2/bus0/target1/lun0/%D", SYMLINK="hdf%n" NUMBER, BUS="ide", id="3.0", NAME="ide/host2/bus1/target0/lun0/%D", SYMLINK="hdg%n" NUMBER, BUS="ide", id="3.1", NAME="ide/host2/bus1/target1/lun0/%D", SYMLINK="hdh%n" NUMBER, BUS="ide", id="4.0", NAME="ide/host4/bus0/target0/lun0/%D", SYMLINK="hdi%n" NUMBER, BUS="ide", id="4.1", NAME="ide/host4/bus0/target1/lun0/%D", SYMLINK="hdj%n" NUMBER, BUS="ide", id="5.0", NAME="ide/host4/bus1/target0/lun0/%D", SYMLINK="hdk%n" NUMBER, BUS="ide", id="5.1", NAME="ide/host4/bus1/target1/lun0/%D", SYMLINK="hdl%n"

REPLACE, KERNEL="md[0-9]*", NAME="md/%n", SYMLINK="md%n" REPLACE, KERNEL="loop[0-9]*", NAME="loop/%n", SYMLINK="loop%n" REPLACE, KERNEL="fd[0-9]*", NAME="floppy/%n", SYMLINK="fd%n"

#REPLACE, KERNEL="cd", NAME="cdroms/cdrom0", SYMLINK="cdrom0 cdrom" #REPLACE, KERNEL="cd[1-9]", NAME="cdroms/cdrom%n", SYMLINK="cdrom%n" REPLACE, KERNEL="pktcdvd[0-9]*", NAME="pktcdvd/%n", SYMLINK="pktcdvd%n"

REPLACE, KERNEL="ram[0-9]*", NAME="rd/%n", SYMLINK="ram%n" REPLACE, KERNEL="raw[0-9]*", NAME="raw/%n", SYMLINK="raw%n"

REPLACE, KERNEL="vcs", NAME="vcc/0" , SYMLINK="vcs0 vcs" REPLACE, KERNEL="vcs[0-9]*", NAME="vcc/%n" , SYMLINK="vcs%n" REPLACE, KERNEL="vcsa", NAME="vcc/a0" , SYMLINK="vcs0 vcsa" REPLACE, KERNEL="vcsa[0-9]*", NAME="vcc/a%n" , SYMLINK="vcsa%n" REPLACE, KERNEL="tty", NAME="vc/0" , SYMLINK="tty0 tty" REPLACE, KERNEL="tty[0-9]*", NAME="vc/%n" , SYMLINK="tty%n" REPLACE, KERNEL="ttyS[0-9]*", NAME="tts/%n" , SYMLINK="ttyS%n" REPLACE, KERNEL="ttyUSB[0-9]*", NAME="tts/USB%n"

# can one have more then one from these ?
REPLACE, KERNEL="agpgart", NAME="misc/agpgart", SYMLINK="agpgart"
REPLACE, KERNEL="apm_bios", NAME="misc/apm_bios", SYMLINK="apm_bios"
REPLACE, KERNEL="psaux", NAME="misc/psaux", SYMLINK="psaux"
REPLACE, KERNEL="rtc", NAME="misc/rtc", SYMLINK="rtc"
# some stuff is commented out below, as IIRC the max of tv cards == 8
REPLACE, KERNEL="video0", NAME="v4l/video0", SYMLINK="video0 video"
REPLACE, KERNEL="video[1-9]", NAME="v4l/video%n", SYMLINK="video%n"
#REPLACE, KERNEL="video[1-9][0-9]*", NAME="v4l/video%n", SYMLINK="video%n"
REPLACE, KERNEL="radio0", NAME="v4l/radio0", SYMLINK="radeo0 radeo"
REPLACE, KERNEL="radio[1-9]", NAME="v4l/radio%n", SYMLINK="radeo%n"
#REPLACE, KERNEL="radio[1-9][0-9]*", NAME="v4l/radio%n", SYMLINK="radeo%n"
REPLACE, KERNEL="vbi0",   NAME="v4l/vbi0", SYMLINK="vbi0 vbi"
REPLACE, KERNEL="vbi[1-9]",   NAME="v4l/vbi%n", SYMLINK="vbi%n"
#REPLACE, KERNEL="vbi[1-9][0-9]*",   NAME="v4l/vbi%n", SYMLINK="vbi%n"
REPLACE, KERNEL="vtx0",   NAME="v4l/vtx0", SYMLINK="vtx0 vtx"
REPLACE, KERNEL="vtx[1-9]",   NAME="v4l/vtx%n", SYMLINK="vtx%n"
#REPLACE, KERNEL="vtx[1-9][0-9]*",   NAME="v4l/vtx%n", SYMLINK="vtx%n"

REPLACE, KERNEL="fb[0-9]*", NAME="fb/%n", SYMLINK="fb%n"

REPLACE, KERNEL="i2c-[0-9]*", NAME="i2c/%n", SYMLINK="i2c-%n"

/udev

|-- agpgart -> ./misc/agpgart
|-- apm_bios -> ./misc/apm_bios
|-- console
|-- fd0 -> ./floppy/0
|-- floppy
|   `-- 0
|-- full
|-- hda -> ./ide/host0/bus0/target0/lun0/disk
|-- hda1 -> ./ide/host0/bus0/target0/lun0/part1
|-- hda10 -> ./ide/host0/bus0/target0/lun0/part10
|-- hda2 -> ./ide/host0/bus0/target0/lun0/part2
|-- hda5 -> ./ide/host0/bus0/target0/lun0/part5
|-- hda6 -> ./ide/host0/bus0/target0/lun0/part6
|-- hda7 -> ./ide/host0/bus0/target0/lun0/part7
|-- hda8 -> ./ide/host0/bus0/target0/lun0/part8
|-- hda9 -> ./ide/host0/bus0/target0/lun0/part9
|-- hde -> ./ide/host2/bus0/target0/lun0/disk
|-- hde1 -> ./ide/host2/bus0/target0/lun0/part1
|-- hde2 -> ./ide/host2/bus0/target0/lun0/part2
|-- hde5 -> ./ide/host2/bus0/target0/lun0/part5
|-- hde6 -> ./ide/host2/bus0/target0/lun0/part6
|-- hde7 -> ./ide/host2/bus0/target0/lun0/part7
|-- hde8 -> ./ide/host2/bus0/target0/lun0/part8
|-- hdg -> ./ide/host2/bus1/target0/lun0/disk
|-- hdg1 -> ./ide/host2/bus1/target0/lun0/part1
|-- hdg10 -> ./ide/host2/bus1/target0/lun0/part10
|-- hdg11 -> ./ide/host2/bus1/target0/lun0/part11
|-- hdg12 -> ./ide/host2/bus1/target0/lun0/part12
|-- hdg13 -> ./ide/host2/bus1/target0/lun0/part13
|-- hdg2 -> ./ide/host2/bus1/target0/lun0/part2
|-- hdg5 -> ./ide/host2/bus1/target0/lun0/part5
|-- hdg6 -> ./ide/host2/bus1/target0/lun0/part6
|-- hdg7 -> ./ide/host2/bus1/target0/lun0/part7
|-- hdg8 -> ./ide/host2/bus1/target0/lun0/part8
|-- hdg9 -> ./ide/host2/bus1/target0/lun0/part9
|-- hdi -> ./ide/host4/bus0/target0/lun0/disk
|-- hdj -> ./ide/host4/bus0/target1/lun0/disk
|-- hdl -> ./ide/host4/bus1/target1/lun0/disk
|-- ide
|   |-- host0
|   |   `-- bus0
|   |       `-- target0
|   |           `-- lun0
|   |               |-- disk
|   |               |-- part1
|   |               |-- part10
|   |               |-- part2
|   |               |-- part5
|   |               |-- part6
|   |               |-- part7
|   |               |-- part8
|   |               `-- part9
|   |-- host2
|   |   |-- bus0
|   |   |   `-- target0
|   |   |       `-- lun0
|   |   |           |-- disk
|   |   |           |-- part1
|   |   |           |-- part2
|   |   |           |-- part5
|   |   |           |-- part6
|   |   |           |-- part7
|   |   |           `-- part8
|   |   `-- bus1
|   |       `-- target0
|   |           `-- lun0
|   |               |-- disk
|   |               |-- part1
|   |               |-- part10
|   |               |-- part11
|   |               |-- part12
|   |               |-- part13
|   |               |-- part2
|   |               |-- part5
|   |               |-- part6
|   |               |-- part7
|   |               |-- part8
|   |               `-- part9
|   `-- host4
|       |-- bus0
|       |   |-- target0
|       |   |   `-- lun0
|       |   |       `-- disk
|       |   `-- target1
|       |       `-- lun0
|       |           `-- disk
|       `-- bus1
|           `-- target1
|               `-- lun0
|                   `-- disk
|-- kmem
|-- kmsg
|-- mem
|-- misc
|   |-- agpgart
|   |-- apm_bios
|   |-- psaux
|   `-- rtc
|-- null
|-- port
|-- psaux -> ./misc/psaux
|-- ptmx
|-- ram0 -> ./rd/0
|-- ram1 -> ./rd/1
|-- ram10 -> ./rd/10
|-- ram11 -> ./rd/11
|-- ram12 -> ./rd/12
|-- ram13 -> ./rd/13
|-- ram14 -> ./rd/14
|-- ram15 -> ./rd/15
|-- ram2 -> ./rd/2
|-- ram3 -> ./rd/3
|-- ram4 -> ./rd/4
|-- ram5 -> ./rd/5
|-- ram6 -> ./rd/6
|-- ram7 -> ./rd/7
|-- ram8 -> ./rd/8
|-- ram9 -> ./rd/9
|-- random
|-- rd
|   |-- 0
|   |-- 1
|   |-- 10
|   |-- 11
|   |-- 12
|   |-- 13
|   |-- 14
|   |-- 15
|   |-- 2
|   |-- 3
|   |-- 4
|   |-- 5
|   |-- 6
|   |-- 7
|   |-- 8
|   `-- 9
|-- rtc -> ./misc/rtc
|-- tts
|   |-- 0
|   |-- 1
|   |-- 10
|   |-- 11
|   |-- 12
|   |-- 13
|   |-- 14
|   |-- 15
|   |-- 16
|   |-- 17
|   |-- 18
|   |-- 19
|   |-- 2
|   |-- 20
|   |-- 21
|   |-- 22
|   |-- 23
|   |-- 24
|   |-- 25
|   |-- 26
|   |-- 27
|   |-- 28
|   |-- 29
|   |-- 3
|   |-- 30
|   |-- 31
|   |-- 32
|   |-- 33
|   |-- 34
|   |-- 35
|   |-- 36
|   |-- 37
|   |-- 38
|   |-- 39
|   |-- 4
|   |-- 40
|   |-- 41
|   |-- 42
|   |-- 43
|   |-- 44
|   |-- 45
|   |-- 46
|   |-- 47
|   |-- 48
|   |-- 49
|   |-- 5
|   |-- 50
|   |-- 51
|   |-- 52
|   |-- 53
|   |-- 6
|   |-- 7
|   |-- 8
|   `-- 9
|-- tty -> ./vc/0
|-- tty0 -> ./vc/0
|-- tty1 -> ./vc/1
|-- tty10 -> ./vc/10
|-- tty11 -> ./vc/11
|-- tty12 -> ./vc/12
|-- tty13 -> ./vc/13
|-- tty14 -> ./vc/14
|-- tty15 -> ./vc/15
|-- tty16 -> ./vc/16
|-- tty17 -> ./vc/17
|-- tty18 -> ./vc/18
|-- tty19 -> ./vc/19
|-- tty2 -> ./vc/2
|-- tty20 -> ./vc/20
|-- tty21 -> ./vc/21
|-- tty22 -> ./vc/22
|-- tty23 -> ./vc/23
|-- tty24 -> ./vc/24
|-- tty25 -> ./vc/25
|-- tty26 -> ./vc/26
|-- tty27 -> ./vc/27
|-- tty28 -> ./vc/28
|-- tty29 -> ./vc/29
|-- tty3 -> ./vc/3
|-- tty30 -> ./vc/30
|-- tty31 -> ./vc/31
|-- tty32 -> ./vc/32
|-- tty33 -> ./vc/33
|-- tty34 -> ./vc/34
|-- tty35 -> ./vc/35
|-- tty36 -> ./vc/36
|-- tty37 -> ./vc/37
|-- tty38 -> ./vc/38
|-- tty39 -> ./vc/39
|-- tty4 -> ./vc/4
|-- tty40 -> ./vc/40
|-- tty41 -> ./vc/41
|-- tty42 -> ./vc/42
|-- tty43 -> ./vc/43
|-- tty44 -> ./vc/44
|-- tty45 -> ./vc/45
|-- tty46 -> ./vc/46
|-- tty47 -> ./vc/47
|-- tty48 -> ./vc/48
|-- tty49 -> ./vc/49
|-- tty5 -> ./vc/5
|-- tty50 -> ./vc/50
|-- tty51 -> ./vc/51
|-- tty52 -> ./vc/52
|-- tty53 -> ./vc/53
|-- tty54 -> ./vc/54
|-- tty55 -> ./vc/55
|-- tty56 -> ./vc/56
|-- tty57 -> ./vc/57
|-- tty58 -> ./vc/58
|-- tty59 -> ./vc/59
|-- tty6 -> ./vc/6
|-- tty60 -> ./vc/60
|-- tty61 -> ./vc/61
|-- tty62 -> ./vc/62
|-- tty63 -> ./vc/63
|-- tty7 -> ./vc/7
|-- tty8 -> ./vc/8
|-- tty9 -> ./vc/9
|-- ttyS0 -> ./tts/0
|-- ttyS1 -> ./tts/1
|-- ttyS10 -> ./tts/10
|-- ttyS11 -> ./tts/11
|-- ttyS12 -> ./tts/12
|-- ttyS13 -> ./tts/13
|-- ttyS14 -> ./tts/14
|-- ttyS15 -> ./tts/15
|-- ttyS16 -> ./tts/16
|-- ttyS17 -> ./tts/17
|-- ttyS18 -> ./tts/18
|-- ttyS19 -> ./tts/19
|-- ttyS2 -> ./tts/2
|-- ttyS20 -> ./tts/20
|-- ttyS21 -> ./tts/21
|-- ttyS22 -> ./tts/22
|-- ttyS23 -> ./tts/23
|-- ttyS24 -> ./tts/24
|-- ttyS25 -> ./tts/25
|-- ttyS26 -> ./tts/26
|-- ttyS27 -> ./tts/27
|-- ttyS28 -> ./tts/28
|-- ttyS29 -> ./tts/29
|-- ttyS3 -> ./tts/3
|-- ttyS30 -> ./tts/30
|-- ttyS31 -> ./tts/31
|-- ttyS32 -> ./tts/32
|-- ttyS33 -> ./tts/33
|-- ttyS34 -> ./tts/34
|-- ttyS35 -> ./tts/35
|-- ttyS36 -> ./tts/36
|-- ttyS37 -> ./tts/37
|-- ttyS38 -> ./tts/38
|-- ttyS39 -> ./tts/39
|-- ttyS4 -> ./tts/4
|-- ttyS40 -> ./tts/40
|-- ttyS41 -> ./tts/41
|-- ttyS42 -> ./tts/42
|-- ttyS43 -> ./tts/43
|-- ttyS44 -> ./tts/44
|-- ttyS45 -> ./tts/45
|-- ttyS46 -> ./tts/46
|-- ttyS47 -> ./tts/47
|-- ttyS48 -> ./tts/48
|-- ttyS49 -> ./tts/49
|-- ttyS5 -> ./tts/5
|-- ttyS50 -> ./tts/50
|-- ttyS51 -> ./tts/51
|-- ttyS52 -> ./tts/52
|-- ttyS53 -> ./tts/53
|-- ttyS6 -> ./tts/6
|-- ttyS7 -> ./tts/7
|-- ttyS8 -> ./tts/8
|-- ttyS9 -> ./tts/9
|-- urandom
|-- v4l
|   |-- vbi0
|   `-- video0
|-- vbi -> ./v4l/vbi0
|-- vbi0 -> ./v4l/vbi0
|-- vc
|   |-- 0
|   |-- 1
|   |-- 10
|   |-- 11
|   |-- 12
|   |-- 13
|   |-- 14
|   |-- 15
|   |-- 16
|   |-- 17
|   |-- 18
|   |-- 19
|   |-- 2
|   |-- 20
|   |-- 21
|   |-- 22
|   |-- 23
|   |-- 24
|   |-- 25
|   |-- 26
|   |-- 27
|   |-- 28
|   |-- 29
|   |-- 3
|   |-- 30
|   |-- 31
|   |-- 32
|   |-- 33
|   |-- 34
|   |-- 35
|   |-- 36
|   |-- 37
|   |-- 38
|   |-- 39
|   |-- 4
|   |-- 40
|   |-- 41
|   |-- 42
|   |-- 43
|   |-- 44
|   |-- 45
|   |-- 46
|   |-- 47
|   |-- 48
|   |-- 49
|   |-- 5
|   |-- 50
|   |-- 51
|   |-- 52
|   |-- 53
|   |-- 54
|   |-- 55
|   |-- 56
|   |-- 57
|   |-- 58
|   |-- 59
|   |-- 6
|   |-- 60
|   |-- 61
|   |-- 62
|   |-- 63
|   |-- 7
|   |-- 8
|   `-- 9
|-- vcc
|   |-- 0
|   |-- 1
|   |-- 2
|   |-- 3
|   |-- 4
|   |-- 5
|   |-- 6
|   |-- 7
|   |-- 8
|   |-- 9
|   |-- a0
|   |-- a1
|   |-- a2
|   |-- a3
|   |-- a4
|   |-- a5
|   |-- a6
|   |-- a7
|   |-- a8
|   `-- a9
|-- vcs -> ./vcc/0
|-- vcs0 -> ./vcc/0
|-- vcs1 -> ./vcc/1
|-- vcs2 -> ./vcc/2
|-- vcs3 -> ./vcc/3
|-- vcs4 -> ./vcc/4
|-- vcs5 -> ./vcc/5
|-- vcs6 -> ./vcc/6
|-- vcs7 -> ./vcc/7
|-- vcs8 -> ./vcc/8
|-- vcs9 -> ./vcc/9
|-- vcsa -> ./vcc/a0
|-- vcsa1 -> ./vcc/a1
|-- vcsa2 -> ./vcc/a2
|-- vcsa3 -> ./vcc/a3
|-- vcsa4 -> ./vcc/a4
|-- vcsa5 -> ./vcc/a5
|-- vcsa6 -> ./vcc/a6
|-- vcsa7 -> ./vcc/a7
|-- vcsa8 -> ./vcc/a8
|-- vcsa9 -> ./vcc/a9
|-- video -> ./v4l/video0
|-- video0 -> ./v4l/video0

`-- zero

28 directories, 399 files

/dev

|-- cdrom -> cdroms/cdrom0
|-- cdrom0 -> cdroms/cdrom0
|-- cdrom1 -> cdroms/cdrom1
|-- cdrom2 -> cdroms/cdrom2
|-- cdroms
|   |-- cdrom0 -> ../ide/host4/bus0/target0/lun0/cd
|   |-- cdrom1 -> ../ide/host4/bus0/target1/lun0/cd
|   `-- cdrom2 -> ../ide/host4/bus1/target1/lun0/cd
<snip>
|-- discs
|   |-- disc0 -> ../ide/host0/bus0/target0/lun0
|   |-- disc1 -> ../ide/host2/bus0/target0/lun0
|   `-- disc2 -> ../ide/host2/bus1/target0/lun0
<snip>
|-- ide
|   |-- cd
|   |   |-- c4b0t0u0 -> ../host4/bus0/target0/lun0/cd
|   |   |-- c4b0t1u0 -> ../host4/bus0/target1/lun0/cd
|   |   `-- c4b1t1u0 -> ../host4/bus1/target1/lun0/cd
|   |-- hd
|   |   |-- c0b0t0u0 -> ../host0/bus0/target0/lun0/disc
|   |   |-- c0b0t0u0p1 -> ../host0/bus0/target0/lun0/part1
|   |   |-- c0b0t0u0p10 -> ../host0/bus0/target0/lun0/part10
|   |   |-- c0b0t0u0p2 -> ../host0/bus0/target0/lun0/part2
|   |   |-- c0b0t0u0p5 -> ../host0/bus0/target0/lun0/part5
|   |   |-- c0b0t0u0p6 -> ../host0/bus0/target0/lun0/part6
|   |   |-- c0b0t0u0p7 -> ../host0/bus0/target0/lun0/part7
|   |   |-- c0b0t0u0p8 -> ../host0/bus0/target0/lun0/part8
|   |   |-- c0b0t0u0p9 -> ../host0/bus0/target0/lun0/part9
|   |   |-- c2b0t0u0 -> ../host2/bus0/target0/lun0/disc
|   |   |-- c2b0t0u0p1 -> ../host2/bus0/target0/lun0/part1
|   |   |-- c2b0t0u0p2 -> ../host2/bus0/target0/lun0/part2
|   |   |-- c2b0t0u0p5 -> ../host2/bus0/target0/lun0/part5
|   |   |-- c2b0t0u0p6 -> ../host2/bus0/target0/lun0/part6
|   |   |-- c2b0t0u0p7 -> ../host2/bus0/target0/lun0/part7
|   |   |-- c2b0t0u0p8 -> ../host2/bus0/target0/lun0/part8
|   |   |-- c2b1t0u0 -> ../host2/bus1/target0/lun0/disc
|   |   |-- c2b1t0u0p1 -> ../host2/bus1/target0/lun0/part1
|   |   |-- c2b1t0u0p10 -> ../host2/bus1/target0/lun0/part10
|   |   |-- c2b1t0u0p11 -> ../host2/bus1/target0/lun0/part11
|   |   |-- c2b1t0u0p12 -> ../host2/bus1/target0/lun0/part12
|   |   |-- c2b1t0u0p13 -> ../host2/bus1/target0/lun0/part13
|   |   |-- c2b1t0u0p2 -> ../host2/bus1/target0/lun0/part2
|   |   |-- c2b1t0u0p5 -> ../host2/bus1/target0/lun0/part5
|   |   |-- c2b1t0u0p6 -> ../host2/bus1/target0/lun0/part6
|   |   |-- c2b1t0u0p7 -> ../host2/bus1/target0/lun0/part7
|   |   |-- c2b1t0u0p8 -> ../host2/bus1/target0/lun0/part8
|   |   `-- c2b1t0u0p9 -> ../host2/bus1/target0/lun0/part9
|-- pts
|   |-- 0
|   |-- 1
|   |-- 2
|   |-- 3
|   `-- 5
|-- pty
|   |-- m0
|   |-- m1
|   |-- m10
|   |-- m100
|   |-- m101
|   |-- m102
|   |-- m103
|   |-- m104
|   |-- m105
|   |-- m106
|   |-- m107
|   |-- m108
|   |-- m109
|   |-- m11
|   |-- m110
|   |-- m111
|   |-- m112
|   |-- m113
|   |-- m114
|   |-- m115
|   |-- m116
|   |-- m117
|   |-- m118
|   |-- m119
|   |-- m12
|   |-- m120
|   |-- m121
|   |-- m122
|   |-- m123
|   |-- m124
|   |-- m125
|   |-- m126
|   |-- m127
|   |-- m128
|   |-- m129
|   |-- m13
|   |-- m130
|   |-- m131
|   |-- m132
|   |-- m133
|   |-- m134
|   |-- m135
|   |-- m136
|   |-- m137
|   |-- m138
|   |-- m139
|   |-- m14
|   |-- m140
|   |-- m141
|   |-- m142
|   |-- m143
|   |-- m144
|   |-- m145
|   |-- m146
|   |-- m147
|   |-- m148
|   |-- m149
|   |-- m15
|   |-- m150
|   |-- m151
|   |-- m152
|   |-- m153
|   |-- m154
|   |-- m155
|   |-- m156
|   |-- m157
|   |-- m158
|   |-- m159
|   |-- m16
|   |-- m160
|   |-- m161
|   |-- m162
|   |-- m163
|   |-- m164
|   |-- m165
|   |-- m166
|   |-- m167
|   |-- m168
|   |-- m169
|   |-- m17
|   |-- m170
|   |-- m171
|   |-- m172
|   |-- m173
|   |-- m174
|   |-- m175
|   |-- m176
|   |-- m177
|   |-- m178
|   |-- m179
|   |-- m18
|   |-- m180
|   |-- m181
|   |-- m182
|   |-- m183
|   |-- m184
|   |-- m185
|   |-- m186
|   |-- m187
|   |-- m188
|   |-- m189
|   |-- m19
|   |-- m190
|   |-- m191
|   |-- m192
|   |-- m193
|   |-- m194
|   |-- m195
|   |-- m196
|   |-- m197
|   |-- m198
|   |-- m199
|   |-- m2
|   |-- m20
|   |-- m200
|   |-- m201
|   |-- m202
|   |-- m203
|   |-- m204
|   |-- m205
|   |-- m206
|   |-- m207
|   |-- m208
|   |-- m209
|   |-- m21
|   |-- m210
|   |-- m211
|   |-- m212
|   |-- m213
|   |-- m214
|   |-- m215
|   |-- m216
|   |-- m217
|   |-- m218
|   |-- m219
|   |-- m22
|   |-- m220
|   |-- m221
|   |-- m222
|   |-- m223
|   |-- m224
|   |-- m225
|   |-- m226
|   |-- m227
|   |-- m228
|   |-- m229
|   |-- m23
|   |-- m230
|   |-- m231
|   |-- m232
|   |-- m233
|   |-- m234
|   |-- m235
|   |-- m236
|   |-- m237
|   |-- m238
|   |-- m239
|   |-- m24
|   |-- m240
|   |-- m241
|   |-- m242
|   |-- m243
|   |-- m244
|   |-- m245
|   |-- m246
|   |-- m247
|   |-- m248
|   |-- m249
|   |-- m25
|   |-- m250
|   |-- m251
|   |-- m252
|   |-- m253
|   |-- m254
|   |-- m255
|   |-- m26
|   |-- m27
|   |-- m28
|   |-- m29
|   |-- m3
|   |-- m30
|   |-- m31
|   |-- m32
|   |-- m33
|   |-- m34
|   |-- m35
|   |-- m36
|   |-- m37
|   |-- m38
|   |-- m39
|   |-- m4
|   |-- m40
|   |-- m41
|   |-- m42
|   |-- m43
|   |-- m44
|   |-- m45
|   |-- m46
|   |-- m47
|   |-- m48
|   |-- m49
|   |-- m5
|   |-- m50
|   |-- m51
|   |-- m52
|   |-- m53
|   |-- m54
|   |-- m55
|   |-- m56
|   |-- m57
|   |-- m58
|   |-- m59
|   |-- m6
|   |-- m60
|   |-- m61
|   |-- m62
|   |-- m63
|   |-- m64
|   |-- m65
|   |-- m66
|   |-- m67
|   |-- m68
|   |-- m69
|   |-- m7
|   |-- m70
|   |-- m71
|   |-- m72
|   |-- m73
|   |-- m74
|   |-- m75
|   |-- m76
|   |-- m77
|   |-- m78
|   |-- m79
|   |-- m8
|   |-- m80
|   |-- m81
|   |-- m82
|   |-- m83
|   |-- m84
|   |-- m85
|   |-- m86
|   |-- m87
|   |-- m88
|   |-- m89
|   |-- m9
|   |-- m90
|   |-- m91
|   |-- m92
|   |-- m93
|   |-- m94
|   |-- m95
|   |-- m96
|   |-- m97
|   |-- m98
|   |-- m99
|   |-- s0
|   |-- s1
|   |-- s10
|   |-- s100
|   |-- s101
|   |-- s102
|   |-- s103
|   |-- s104
|   |-- s105
|   |-- s106
|   |-- s107
|   |-- s108
|   |-- s109
|   |-- s11
|   |-- s110
|   |-- s111
|   |-- s112
|   |-- s113
|   |-- s114
|   |-- s115
|   |-- s116
|   |-- s117
|   |-- s118
|   |-- s119
|   |-- s12
|   |-- s120
|   |-- s121
|   |-- s122
|   |-- s123
|   |-- s124
|   |-- s125
|   |-- s126
|   |-- s127
|   |-- s128
|   |-- s129
|   |-- s13
|   |-- s130
|   |-- s131
|   |-- s132
|   |-- s133
|   |-- s134
|   |-- s135
|   |-- s136
|   |-- s137
|   |-- s138
|   |-- s139
|   |-- s14
|   |-- s140
|   |-- s141
|   |-- s142
|   |-- s143
|   |-- s144
|   |-- s145
|   |-- s146
|   |-- s147
|   |-- s148
|   |-- s149
|   |-- s15
|   |-- s150
|   |-- s151
|   |-- s152
|   |-- s153
|   |-- s154
|   |-- s155
|   |-- s156
|   |-- s157
|   |-- s158
|   |-- s159
|   |-- s16
|   |-- s160
|   |-- s161
|   |-- s162
|   |-- s163
|   |-- s164
|   |-- s165
|   |-- s166
|   |-- s167
|   |-- s168
|   |-- s169
|   |-- s17
|   |-- s170
|   |-- s171
|   |-- s172
|   |-- s173
|   |-- s174
|   |-- s175
|   |-- s176
|   |-- s177
|   |-- s178
|   |-- s179
|   |-- s18
|   |-- s180
|   |-- s181
|   |-- s182
|   |-- s183
|   |-- s184
|   |-- s185
|   |-- s186
|   |-- s187
|   |-- s188
|   |-- s189
|   |-- s19
|   |-- s190
|   |-- s191
|   |-- s192
|   |-- s193
|   |-- s194
|   |-- s195
|   |-- s196
|   |-- s197
|   |-- s198
|   |-- s199
|   |-- s2
|   |-- s20
|   |-- s200
|   |-- s201
|   |-- s202
|   |-- s203
|   |-- s204
|   |-- s205
|   |-- s206
|   |-- s207
|   |-- s208
|   |-- s209
|   |-- s21
|   |-- s210
|   |-- s211
|   |-- s212
|   |-- s213
|   |-- s214
|   |-- s215
|   |-- s216
|   |-- s217
|   |-- s218
|   |-- s219
|   |-- s22
|   |-- s220
|   |-- s221
|   |-- s222
|   |-- s223
|   |-- s224
|   |-- s225
|   |-- s226
|   |-- s227
|   |-- s228
|   |-- s229
|   |-- s23
|   |-- s230
|   |-- s231
|   |-- s232
|   |-- s233
|   |-- s234
|   |-- s235
|   |-- s236
|   |-- s237
|   |-- s238
|   |-- s239
|   |-- s24
|   |-- s240
|   |-- s241
|   |-- s242
|   |-- s243
|   |-- s244
|   |-- s245
|   |-- s246
|   |-- s247
|   |-- s248
|   |-- s249
|   |-- s25
|   |-- s250
|   |-- s251
|   |-- s252
|   |-- s253
|   |-- s254
|   |-- s255
|   |-- s26
|   |-- s27
|   |-- s28
|   |-- s29
|   |-- s3
|   |-- s30
|   |-- s31
|   |-- s32
|   |-- s33
|   |-- s34
|   |-- s35
|   |-- s36
|   |-- s37
|   |-- s38
|   |-- s39
|   |-- s4
|   |-- s40
|   |-- s41
|   |-- s42
|   |-- s43
|   |-- s44
|   |-- s45
|   |-- s46
|   |-- s47
|   |-- s48
|   |-- s49
|   |-- s5
|   |-- s50
|   |-- s51
|   |-- s52
|   |-- s53
|   |-- s54
|   |-- s55
|   |-- s56
|   |-- s57
|   |-- s58
|   |-- s59
|   |-- s6
|   |-- s60
|   |-- s61
|   |-- s62
|   |-- s63
|   |-- s64
|   |-- s65
|   |-- s66
|   |-- s67
|   |-- s68
|   |-- s69
|   |-- s7
|   |-- s70
|   |-- s71
|   |-- s72
|   |-- s73
|   |-- s74
|   |-- s75
|   |-- s76
|   |-- s77
|   |-- s78
|   |-- s79
|   |-- s8
|   |-- s80
|   |-- s81
|   |-- s82
|   |-- s83
|   |-- s84
|   |-- s85
|   |-- s86
|   |-- s87
|   |-- s88
|   |-- s89
|   |-- s9
|   |-- s90
|   |-- s91
|   |-- s92
|   |-- s93
|   |-- s94
|   |-- s95
|   |-- s96
|   |-- s97
|   |-- s98
|   `-- s99
|-- ptya0 -> pty/m176
|-- ptya1 -> pty/m177
|-- ptya2 -> pty/m178
|-- ptya3 -> pty/m179
|-- ptya4 -> pty/m180
|-- ptya5 -> pty/m181
|-- ptya6 -> pty/m182
|-- ptya7 -> pty/m183
|-- ptya8 -> pty/m184
|-- ptya9 -> pty/m185
|-- ptyaa -> pty/m186
|-- ptyab -> pty/m187
|-- ptyac -> pty/m188
|-- ptyad -> pty/m189
|-- ptyae -> pty/m190
|-- ptyaf -> pty/m191
|-- ptyb0 -> pty/m192
|-- ptyb1 -> pty/m193
|-- ptyb2 -> pty/m194
|-- ptyb3 -> pty/m195
|-- ptyb4 -> pty/m196
|-- ptyb5 -> pty/m197
|-- ptyb6 -> pty/m198
|-- ptyb7 -> pty/m199
|-- ptyb8 -> pty/m200
|-- ptyb9 -> pty/m201
|-- ptyba -> pty/m202
|-- ptybb -> pty/m203
|-- ptybc -> pty/m204
|-- ptybd -> pty/m205
|-- ptybe -> pty/m206
|-- ptybf -> pty/m207
|-- ptyc0 -> pty/m208
|-- ptyc1 -> pty/m209
|-- ptyc2 -> pty/m210
|-- ptyc3 -> pty/m211
|-- ptyc4 -> pty/m212
|-- ptyc5 -> pty/m213
|-- ptyc6 -> pty/m214
|-- ptyc7 -> pty/m215
|-- ptyc8 -> pty/m216
|-- ptyc9 -> pty/m217
|-- ptyca -> pty/m218
|-- ptycb -> pty/m219
|-- ptycc -> pty/m220
|-- ptycd -> pty/m221
|-- ptyce -> pty/m222
|-- ptycf -> pty/m223
|-- ptyd0 -> pty/m224
|-- ptyd1 -> pty/m225
|-- ptyd2 -> pty/m226
|-- ptyd3 -> pty/m227
|-- ptyd4 -> pty/m228
|-- ptyd5 -> pty/m229
|-- ptyd6 -> pty/m230
|-- ptyd7 -> pty/m231
|-- ptyd8 -> pty/m232
|-- ptyd9 -> pty/m233
|-- ptyda -> pty/m234
|-- ptydb -> pty/m235
|-- ptydc -> pty/m236
|-- ptydd -> pty/m237
|-- ptyde -> pty/m238
|-- ptydf -> pty/m239
|-- ptye0 -> pty/m240
|-- ptye1 -> pty/m241
|-- ptye2 -> pty/m242
|-- ptye3 -> pty/m243
|-- ptye4 -> pty/m244
|-- ptye5 -> pty/m245
|-- ptye6 -> pty/m246
|-- ptye7 -> pty/m247
|-- ptye8 -> pty/m248
|-- ptye9 -> pty/m249
|-- ptyea -> pty/m250
|-- ptyeb -> pty/m251
|-- ptyec -> pty/m252
|-- ptyed -> pty/m253
|-- ptyee -> pty/m254
|-- ptyef -> pty/m255
|-- ptyp0 -> pty/m0
|-- ptyp1 -> pty/m1
|-- ptyp2 -> pty/m2
|-- ptyp3 -> pty/m3
|-- ptyp4 -> pty/m4
|-- ptyp5 -> pty/m5
|-- ptyp6 -> pty/m6
|-- ptyp7 -> pty/m7
|-- ptyp8 -> pty/m8
|-- ptyp9 -> pty/m9
|-- ptypa -> pty/m10
|-- ptypb -> pty/m11
|-- ptypc -> pty/m12
|-- ptypd -> pty/m13
|-- ptype -> pty/m14
|-- ptypf -> pty/m15
|-- ptyq0 -> pty/m16
|-- ptyq1 -> pty/m17
|-- ptyq2 -> pty/m18
|-- ptyq3 -> pty/m19
|-- ptyq4 -> pty/m20
|-- ptyq5 -> pty/m21
|-- ptyq6 -> pty/m22
|-- ptyq7 -> pty/m23
|-- ptyq8 -> pty/m24
|-- ptyq9 -> pty/m25
|-- ptyqa -> pty/m26
|-- ptyqb -> pty/m27
|-- ptyqc -> pty/m28
|-- ptyqd -> pty/m29
|-- ptyqe -> pty/m30
|-- ptyqf -> pty/m31
|-- ptyr0 -> pty/m32
|-- ptyr1 -> pty/m33
|-- ptyr2 -> pty/m34
|-- ptyr3 -> pty/m35
|-- ptyr4 -> pty/m36
|-- ptyr5 -> pty/m37
|-- ptyr6 -> pty/m38
|-- ptyr7 -> pty/m39
|-- ptyr8 -> pty/m40
|-- ptyr9 -> pty/m41
|-- ptyra -> pty/m42
|-- ptyrb -> pty/m43
|-- ptyrc -> pty/m44
|-- ptyrd -> pty/m45
|-- ptyre -> pty/m46
|-- ptyrf -> pty/m47
|-- ptys0 -> pty/m48
|-- ptys1 -> pty/m49
|-- ptys2 -> pty/m50
|-- ptys3 -> pty/m51
|-- ptys4 -> pty/m52
|-- ptys5 -> pty/m53
|-- ptys6 -> pty/m54
|-- ptys7 -> pty/m55
|-- ptys8 -> pty/m56
|-- ptys9 -> pty/m57
|-- ptysa -> pty/m58
|-- ptysb -> pty/m59
|-- ptysc -> pty/m60
|-- ptysd -> pty/m61
|-- ptyse -> pty/m62
|-- ptysf -> pty/m63
|-- ptyt0 -> pty/m64
|-- ptyt1 -> pty/m65
|-- ptyt2 -> pty/m66
|-- ptyt3 -> pty/m67
|-- ptyt4 -> pty/m68
|-- ptyt5 -> pty/m69
|-- ptyt6 -> pty/m70
|-- ptyt7 -> pty/m71
|-- ptyt8 -> pty/m72
|-- ptyt9 -> pty/m73
|-- ptyta -> pty/m74
|-- ptytb -> pty/m75
|-- ptytc -> pty/m76
|-- ptytd -> pty/m77
|-- ptyte -> pty/m78
|-- ptytf -> pty/m79
|-- ptyu0 -> pty/m80
|-- ptyu1 -> pty/m81
|-- ptyu2 -> pty/m82
|-- ptyu3 -> pty/m83
|-- ptyu4 -> pty/m84
|-- ptyu5 -> pty/m85
|-- ptyu6 -> pty/m86
|-- ptyu7 -> pty/m87
|-- ptyu8 -> pty/m88
|-- ptyu9 -> pty/m89
|-- ptyua -> pty/m90
|-- ptyub -> pty/m91
|-- ptyuc -> pty/m92
|-- ptyud -> pty/m93
|-- ptyue -> pty/m94
|-- ptyuf -> pty/m95
|-- ptyv0 -> pty/m96
|-- ptyv1 -> pty/m97
|-- ptyv2 -> pty/m98
|-- ptyv3 -> pty/m99
|-- ptyv4 -> pty/m100
|-- ptyv5 -> pty/m101
|-- ptyv6 -> pty/m102
|-- ptyv7 -> pty/m103
|-- ptyv8 -> pty/m104
|-- ptyv9 -> pty/m105
|-- ptyva -> pty/m106
|-- ptyvb -> pty/m107
|-- ptyvc -> pty/m108
|-- ptyvd -> pty/m109
|-- ptyve -> pty/m110
|-- ptyvf -> pty/m111
|-- ptyw0 -> pty/m112
|-- ptyw1 -> pty/m113
|-- ptyw2 -> pty/m114
|-- ptyw3 -> pty/m115
|-- ptyw4 -> pty/m116
|-- ptyw5 -> pty/m117
|-- ptyw6 -> pty/m118
|-- ptyw7 -> pty/m119
|-- ptyw8 -> pty/m120
|-- ptyw9 -> pty/m121
|-- ptywa -> pty/m122
|-- ptywb -> pty/m123
|-- ptywc -> pty/m124
|-- ptywd -> pty/m125
|-- ptywe -> pty/m126
|-- ptywf -> pty/m127
|-- ptyx0 -> pty/m128
|-- ptyx1 -> pty/m129
|-- ptyx2 -> pty/m130
|-- ptyx3 -> pty/m131
|-- ptyx4 -> pty/m132
|-- ptyx5 -> pty/m133
|-- ptyx6 -> pty/m134
|-- ptyx7 -> pty/m135
|-- ptyx8 -> pty/m136
|-- ptyx9 -> pty/m137
|-- ptyxa -> pty/m138
|-- ptyxb -> pty/m139
|-- ptyxc -> pty/m140
|-- ptyxd -> pty/m141
|-- ptyxe -> pty/m142
|-- ptyxf -> pty/m143
|-- ptyy0 -> pty/m144
|-- ptyy1 -> pty/m145
|-- ptyy2 -> pty/m146
|-- ptyy3 -> pty/m147
|-- ptyy4 -> pty/m148
|-- ptyy5 -> pty/m149
|-- ptyy6 -> pty/m150
|-- ptyy7 -> pty/m151
|-- ptyy8 -> pty/m152
|-- ptyy9 -> pty/m153
|-- ptyya -> pty/m154
|-- ptyyb -> pty/m155
|-- ptyyc -> pty/m156
|-- ptyyd -> pty/m157
|-- ptyye -> pty/m158
|-- ptyyf -> pty/m159
|-- ptyz0 -> pty/m160
|-- ptyz1 -> pty/m161
|-- ptyz2 -> pty/m162
|-- ptyz3 -> pty/m163
|-- ptyz4 -> pty/m164
|-- ptyz5 -> pty/m165
|-- ptyz6 -> pty/m166
|-- ptyz7 -> pty/m167
|-- ptyz8 -> pty/m168
|-- ptyz9 -> pty/m169
|-- ptyza -> pty/m170
|-- ptyzb -> pty/m171
|-- ptyzc -> pty/m172
|-- ptyzd -> pty/m173
|-- ptyze -> pty/m174
|-- ptyzf -> pty/m175
|-- raw
|   |-- raw1
|   |-- raw10
|   |-- raw100
|   |-- raw101
|   |-- raw102
|   |-- raw103
|   |-- raw104
|   |-- raw105
|   |-- raw106
|   |-- raw107
|   |-- raw108
|   |-- raw109
|   |-- raw11
|   |-- raw110
|   |-- raw111
|   |-- raw112
|   |-- raw113
|   |-- raw114
|   |-- raw115
|   |-- raw116
|   |-- raw117
|   |-- raw118
|   |-- raw119
|   |-- raw12
|   |-- raw120
|   |-- raw121
|   |-- raw122
|   |-- raw123
|   |-- raw124
|   |-- raw125
|   |-- raw126
|   |-- raw127
|   |-- raw128
|   |-- raw129
|   |-- raw13
|   |-- raw130
|   |-- raw131
|   |-- raw132
|   |-- raw133
|   |-- raw134
|   |-- raw135
|   |-- raw136
|   |-- raw137
|   |-- raw138
|   |-- raw139
|   |-- raw14
|   |-- raw140
|   |-- raw141
|   |-- raw142
|   |-- raw143
|   |-- raw144
|   |-- raw145
|   |-- raw146
|   |-- raw147
|   |-- raw148
|   |-- raw149
|   |-- raw15
|   |-- raw150
|   |-- raw151
|   |-- raw152
|   |-- raw153
|   |-- raw154
|   |-- raw155
|   |-- raw156
|   |-- raw157
|   |-- raw158
|   |-- raw159
|   |-- raw16
|   |-- raw160
|   |-- raw161
|   |-- raw162
|   |-- raw163
|   |-- raw164
|   |-- raw165
|   |-- raw166
|   |-- raw167
|   |-- raw168
|   |-- raw169
|   |-- raw17
|   |-- raw170
|   |-- raw171
|   |-- raw172
|   |-- raw173
|   |-- raw174
|   |-- raw175
|   |-- raw176
|   |-- raw177
|   |-- raw178
|   |-- raw179
|   |-- raw18
|   |-- raw180
|   |-- raw181
|   |-- raw182
|   |-- raw183
|   |-- raw184
|   |-- raw185
|   |-- raw186
|   |-- raw187
|   |-- raw188
|   |-- raw189
|   |-- raw19
|   |-- raw190
|   |-- raw191
|   |-- raw192
|   |-- raw193
|   |-- raw194
|   |-- raw195
|   |-- raw196
|   |-- raw197
|   |-- raw198
|   |-- raw199
|   |-- raw2
|   |-- raw20
|   |-- raw200
|   |-- raw201
|   |-- raw202
|   |-- raw203
|   |-- raw204
|   |-- raw205
|   |-- raw206
|   |-- raw207
|   |-- raw208
|   |-- raw209
|   |-- raw21
|   |-- raw210
|   |-- raw211
|   |-- raw212
|   |-- raw213
|   |-- raw214
|   |-- raw215
|   |-- raw216
|   |-- raw217
|   |-- raw218
|   |-- raw219
|   |-- raw22
|   |-- raw220
|   |-- raw221
|   |-- raw222
|   |-- raw223
|   |-- raw224
|   |-- raw225
|   |-- raw226
|   |-- raw227
|   |-- raw228
|   |-- raw229
|   |-- raw23
|   |-- raw230
|   |-- raw231
|   |-- raw232
|   |-- raw233
|   |-- raw234
|   |-- raw235
|   |-- raw236
|   |-- raw237
|   |-- raw238
|   |-- raw239
|   |-- raw24
|   |-- raw240
|   |-- raw241
|   |-- raw242
|   |-- raw243
|   |-- raw244
|   |-- raw245
|   |-- raw246
|   |-- raw247
|   |-- raw248
|   |-- raw249
|   |-- raw25
|   |-- raw250
|   |-- raw251
|   |-- raw252
|   |-- raw253
|   |-- raw254
|   |-- raw255
|   |-- raw26
|   |-- raw27
|   |-- raw28
|   |-- raw29
|   |-- raw3
|   |-- raw30
|   |-- raw31
|   |-- raw32
|   |-- raw33
|   |-- raw34
|   |-- raw35
|   |-- raw36
|   |-- raw37
|   |-- raw38
|   |-- raw39
|   |-- raw4
|   |-- raw40
|   |-- raw41
|   |-- raw42
|   |-- raw43
|   |-- raw44
|   |-- raw45
|   |-- raw46
|   |-- raw47
|   |-- raw48
|   |-- raw49
|   |-- raw5
|   |-- raw50
|   |-- raw51
|   |-- raw52
|   |-- raw53
|   |-- raw54
|   |-- raw55
|   |-- raw56
|   |-- raw57
|   |-- raw58
|   |-- raw59
|   |-- raw6
|   |-- raw60
|   |-- raw61
|   |-- raw62
|   |-- raw63
|   |-- raw64
|   |-- raw65
|   |-- raw66
|   |-- raw67
|   |-- raw68
|   |-- raw69
|   |-- raw7
|   |-- raw70
|   |-- raw71
|   |-- raw72
|   |-- raw73
|   |-- raw74
|   |-- raw75
|   |-- raw76
|   |-- raw77
|   |-- raw78
|   |-- raw79
|   |-- raw8
|   |-- raw80
|   |-- raw81
|   |-- raw82
|   |-- raw83
|   |-- raw84
|   |-- raw85
|   |-- raw86
|   |-- raw87
|   |-- raw88
|   |-- raw89
|   |-- raw9
|   |-- raw90
|   |-- raw91
|   |-- raw92
|   |-- raw93
|   |-- raw94
|   |-- raw95
|   |-- raw96
|   |-- raw97
|   |-- raw98
|   |-- raw99
|   `-- rawctl
|-- root
|-- root.old -> rd/0
|-- ttya0 -> pty/s176
|-- ttya1 -> pty/s177
|-- ttya2 -> pty/s178
|-- ttya3 -> pty/s179
|-- ttya4 -> pty/s180
|-- ttya5 -> pty/s181
|-- ttya6 -> pty/s182
|-- ttya7 -> pty/s183
|-- ttya8 -> pty/s184
|-- ttya9 -> pty/s185
|-- ttyaa -> pty/s186
|-- ttyab -> pty/s187
|-- ttyac -> pty/s188
|-- ttyad -> pty/s189
|-- ttyae -> pty/s190
|-- ttyaf -> pty/s191
|-- ttyb0 -> pty/s192
|-- ttyb1 -> pty/s193
|-- ttyb2 -> pty/s194
|-- ttyb3 -> pty/s195
|-- ttyb4 -> pty/s196
|-- ttyb5 -> pty/s197
|-- ttyb6 -> pty/s198
|-- ttyb7 -> pty/s199
|-- ttyb8 -> pty/s200
|-- ttyb9 -> pty/s201
|-- ttyba -> pty/s202
|-- ttybb -> pty/s203
|-- ttybc -> pty/s204
|-- ttybd -> pty/s205
|-- ttybe -> pty/s206
|-- ttybf -> pty/s207
|-- ttyc0 -> pty/s208
|-- ttyc1 -> pty/s209
|-- ttyc2 -> pty/s210
|-- ttyc3 -> pty/s211
|-- ttyc4 -> pty/s212
|-- ttyc5 -> pty/s213
|-- ttyc6 -> pty/s214
|-- ttyc7 -> pty/s215
|-- ttyc8 -> pty/s216
|-- ttyc9 -> pty/s217
|-- ttyca -> pty/s218
|-- ttycb -> pty/s219
|-- ttycc -> pty/s220
|-- ttycd -> pty/s221
|-- ttyce -> pty/s222
|-- ttycf -> pty/s223
|-- ttyd0 -> pty/s224
|-- ttyd1 -> pty/s225
|-- ttyd2 -> pty/s226
|-- ttyd3 -> pty/s227
|-- ttyd4 -> pty/s228
|-- ttyd5 -> pty/s229
|-- ttyd6 -> pty/s230
|-- ttyd7 -> pty/s231
|-- ttyd8 -> pty/s232
|-- ttyd9 -> pty/s233
|-- ttyda -> pty/s234
|-- ttydb -> pty/s235
|-- ttydc -> pty/s236
|-- ttydd -> pty/s237
|-- ttyde -> pty/s238
|-- ttydf -> pty/s239
|-- ttye0 -> pty/s240
|-- ttye1 -> pty/s241
|-- ttye2 -> pty/s242
|-- ttye3 -> pty/s243
|-- ttye4 -> pty/s244
|-- ttye5 -> pty/s245
|-- ttye6 -> pty/s246
|-- ttye7 -> pty/s247
|-- ttye8 -> pty/s248
|-- ttye9 -> pty/s249
|-- ttyea -> pty/s250
|-- ttyeb -> pty/s251
|-- ttyec -> pty/s252
|-- ttyed -> pty/s253
|-- ttyee -> pty/s254
|-- ttyef -> pty/s255
|-- ttyp0 -> pty/s0
|-- ttyp1 -> pty/s1
|-- ttyp2 -> pty/s2
|-- ttyp3 -> pty/s3
|-- ttyp4 -> pty/s4
|-- ttyp5 -> pty/s5
|-- ttyp6 -> pty/s6
|-- ttyp7 -> pty/s7
|-- ttyp8 -> pty/s8
|-- ttyp9 -> pty/s9
|-- ttypa -> pty/s10
|-- ttypb -> pty/s11
|-- ttypc -> pty/s12
|-- ttypd -> pty/s13
|-- ttype -> pty/s14
|-- ttypf -> pty/s15
|-- ttyq0 -> pty/s16
|-- ttyq1 -> pty/s17
|-- ttyq2 -> pty/s18
|-- ttyq3 -> pty/s19
|-- ttyq4 -> pty/s20
|-- ttyq5 -> pty/s21
|-- ttyq6 -> pty/s22
|-- ttyq7 -> pty/s23
|-- ttyq8 -> pty/s24
|-- ttyq9 -> pty/s25
|-- ttyqa -> pty/s26
|-- ttyqb -> pty/s27
|-- ttyqc -> pty/s28
|-- ttyqd -> pty/s29
|-- ttyqe -> pty/s30
|-- ttyqf -> pty/s31
|-- ttyr0 -> pty/s32
|-- ttyr1 -> pty/s33
|-- ttyr2 -> pty/s34
|-- ttyr3 -> pty/s35
|-- ttyr4 -> pty/s36
|-- ttyr5 -> pty/s37
|-- ttyr6 -> pty/s38
|-- ttyr7 -> pty/s39
|-- ttyr8 -> pty/s40
|-- ttyr9 -> pty/s41
|-- ttyra -> pty/s42
|-- ttyrb -> pty/s43
|-- ttyrc -> pty/s44
|-- ttyrd -> pty/s45
|-- ttyre -> pty/s46
|-- ttyrf -> pty/s47
|-- ttys0 -> pty/s48
|-- ttys1 -> pty/s49
|-- ttys2 -> pty/s50
|-- ttys3 -> pty/s51
|-- ttys4 -> pty/s52
|-- ttys5 -> pty/s53
|-- ttys6 -> pty/s54
|-- ttys7 -> pty/s55
|-- ttys8 -> pty/s56
|-- ttys9 -> pty/s57
|-- ttysa -> pty/s58
|-- ttysb -> pty/s59
|-- ttysc -> pty/s60
|-- ttysd -> pty/s61
|-- ttyse -> pty/s62
|-- ttysf -> pty/s63
|-- ttyt0 -> pty/s64
|-- ttyt1 -> pty/s65
|-- ttyt2 -> pty/s66
|-- ttyt3 -> pty/s67
|-- ttyt4 -> pty/s68
|-- ttyt5 -> pty/s69
|-- ttyt6 -> pty/s70
|-- ttyt7 -> pty/s71
|-- ttyt8 -> pty/s72
|-- ttyt9 -> pty/s73
|-- ttyta -> pty/s74
|-- ttytb -> pty/s75
|-- ttytc -> pty/s76
|-- ttytd -> pty/s77
|-- ttyte -> pty/s78
|-- ttytf -> pty/s79
|-- ttyu0 -> pty/s80
|-- ttyu1 -> pty/s81
|-- ttyu2 -> pty/s82
|-- ttyu3 -> pty/s83
|-- ttyu4 -> pty/s84
|-- ttyu5 -> pty/s85
|-- ttyu6 -> pty/s86
|-- ttyu7 -> pty/s87
|-- ttyu8 -> pty/s88
|-- ttyu9 -> pty/s89
|-- ttyua -> pty/s90
|-- ttyub -> pty/s91
|-- ttyuc -> pty/s92
|-- ttyud -> pty/s93
|-- ttyue -> pty/s94
|-- ttyuf -> pty/s95
|-- ttyv0 -> pty/s96
|-- ttyv1 -> pty/s97
|-- ttyv2 -> pty/s98
|-- ttyv3 -> pty/s99
|-- ttyv4 -> pty/s100
|-- ttyv5 -> pty/s101
|-- ttyv6 -> pty/s102
|-- ttyv7 -> pty/s103
|-- ttyv8 -> pty/s104
|-- ttyv9 -> pty/s105
|-- ttyva -> pty/s106
|-- ttyvb -> pty/s107
|-- ttyvc -> pty/s108
|-- ttyvd -> pty/s109
|-- ttyve -> pty/s110
|-- ttyvf -> pty/s111
|-- ttyw0 -> pty/s112
|-- ttyw1 -> pty/s113
|-- ttyw2 -> pty/s114
|-- ttyw3 -> pty/s115
|-- ttyw4 -> pty/s116
|-- ttyw5 -> pty/s117
|-- ttyw6 -> pty/s118
|-- ttyw7 -> pty/s119
|-- ttyw8 -> pty/s120
|-- ttyw9 -> pty/s121
|-- ttywa -> pty/s122
|-- ttywb -> pty/s123
|-- ttywc -> pty/s124
|-- ttywd -> pty/s125
|-- ttywe -> pty/s126
|-- ttywf -> pty/s127
|-- ttyx0 -> pty/s128
|-- ttyx1 -> pty/s129
|-- ttyx2 -> pty/s130
|-- ttyx3 -> pty/s131
|-- ttyx4 -> pty/s132
|-- ttyx5 -> pty/s133
|-- ttyx6 -> pty/s134
|-- ttyx7 -> pty/s135
|-- ttyx8 -> pty/s136
|-- ttyx9 -> pty/s137
|-- ttyxa -> pty/s138
|-- ttyxb -> pty/s139
|-- ttyxc -> pty/s140
|-- ttyxd -> pty/s141
|-- ttyxe -> pty/s142
|-- ttyxf -> pty/s143
|-- ttyy0 -> pty/s144
|-- ttyy1 -> pty/s145
|-- ttyy2 -> pty/s146
|-- ttyy3 -> pty/s147
|-- ttyy4 -> pty/s148
|-- ttyy5 -> pty/s149
|-- ttyy6 -> pty/s150
|-- ttyy7 -> pty/s151
|-- ttyy8 -> pty/s152
|-- ttyy9 -> pty/s153
|-- ttyya -> pty/s154
|-- ttyyb -> pty/s155
|-- ttyyc -> pty/s156
|-- ttyyd -> pty/s157
|-- ttyye -> pty/s158
|-- ttyyf -> pty/s159
|-- ttyz0 -> pty/s160
|-- ttyz1 -> pty/s161
|-- ttyz2 -> pty/s162
|-- ttyz3 -> pty/s163
|-- ttyz4 -> pty/s164
|-- ttyz5 -> pty/s165
|-- ttyz6 -> pty/s166
|-- ttyz7 -> pty/s167
|-- ttyz8 -> pty/s168
|-- ttyz9 -> pty/s169
|-- ttyza -> pty/s170
|-- ttyzb -> pty/s171
|-- ttyzc -> pty/s172
|-- ttyzd -> pty/s173
|-- ttyze -> pty/s174
|-- ttyzf -> pty/s175

49 directories, 1802 files

#1 lore raw
Quoted 4 lines · Svetoslav Slavtchev

let's start with the question

i'm still missing a number of devices, how should i get them in /udev ? these are the raw , pty and pts devices

These, and more, currently lack class device support in the kernel. As an example, you can look at Greg's tty class in drivers/char/tty_io.c AFAICS, pty and pts devices need not be created if you use the /dev/pts file system, although you could register them as tty class devices.

Aside from raw devices, we need at least support for tape and misc devices (both have been discussed before here) and there are probable others.

Quoted 5 lines

and there is a spelling issue either in devfs or -D :-) according to devfs hole disks are named "disc"
according to -D they are named "disk"
to me the second is more correct, but as it was added just for devfs compatibility it should be probably changed to what devfs use "disc"

When I wrote the patch for %D, I had only dasd devices in mind, which actually used 'disk', not 'disc' in devfs. Maybe we need both variants, e.g. %d for disc and %D for disk?
Which drivers are using the disc name, is it only ide or are there others?

	Arnd <><

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#2 lore raw
In reply to Svetoslav Slavtchev
Quoted 11 lines · Svetoslav Slavtchev
Quoted 5 lines

let's start with the question

i'm still missing a number of devices, how should i get them in /udev ? these are the raw , pty and pts devices

These, and more, currently lack class device support in the kernel. As an example, you can look at Greg's tty class in drivers/char/tty_io.c AFAICS, pty and pts devices need not be created if you use the /dev/pts file system, although you could register them as tty class devices.

ok

Quoted 2 lines

Aside from raw devices, we need at least support for tape and misc devices (both have been discussed before here) and there are probable others.

Greg has posted a patch for misc devices, so then raw & tape are the missing

Quoted 10 lines
Quoted 5 lines

and there is a spelling issue either in devfs or -D :-) according to devfs hole disks are named "disc"
according to -D they are named "disk"
to me the second is more correct, but as it was added just for devfs compatibility it should be probably changed to what devfs use "disc"

When I wrote the patch for %D, I had only dasd devices in mind, which actually used 'disk', not 'disc' in devfs. Maybe we need both variants, e.g. %d for disc and %D for disk?
Which drivers are using the disc name, is it only ide or are there others?

according to my hardware scsi devices use "disc" too /* just pluged in a usb zip drive */

for other hardware i don't know

which reminds me,
couldn't the -D or -d modifier create the path to the device it's the same for ide & scsi /* except the trailing ide/scsi */ " /host0/bus0/target0/lun0/ " from the id

for a generic udev.rules that should work on most systems at least 10-20 lines are needed only for ide/scsi disks

best,

svetljo

PS
for cd devices "cd" is used instead of "disk", but can we distinguish cd's from hard drives in sysfs?

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#3 lore raw
In reply to Svetoslav Slavtchev
Quoted 1 line · Svetoslav Slavtchev

according to my hardware scsi devices use "disc" too

Everything in devfs uses disc IIRC. I even remember a thread on LKML about this.

Quoted 3 lines

PS
for cd devices "cd" is used instead of "disk", but can we distinguish cd's from hard drives in sysfs?

We discussed this last week, more kernel support is needed for this (and then an interface in the config file).

Signature · 13 lines
ciao, |
Marco | [3564 pr4Q1yP37wchM]


-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#4 lore raw
In reply to Svetoslav Slavtchev
Quoted 4 lines · Svetoslav Slavtchev

Hi,

udev_bk is looking really great :-)
great work , isn't it time for a 0.009 or 0.1 release?

What's with the '.'? 009 will be the next release, hopefully soon, I'm waiting on some stuff from the libsysfs authors...

Quoted 4 lines

let's start with the question

i'm still missing a number of devices, how should i get them in /udev ? these are the raw , pty and pts devices

pty and pts are handled by the devpts filesystem.
For raw devices I have a patch floating around in my kernel tree that needs to be looked at a bunch. Care to test it out?

Quoted 1 line

also does anyone have links to the patches that add sound support ?

Again, I have patches, but don't think they are ready for prime time. I want to get these out soon, need to stop answering dumb devfs vs udev questions on lkml...

Quoted 6 lines

attached is my udev.rules,
which brings me directory structure almost(completely?) equivelent to the devfs one, except that some devices are still missing ( tree /udev = tree-udev.txt, missing entries from /dev = tree-dev.txt )

and i'm not sure how can i distinguish a cd drive from a hard drive

For scsi cdroms it's easy, look at the type file in sysfs. For ide cdroms, code needs to be added to the kernel to export that information for you to determine this.

Quoted 5 lines

and there is a spelling issue either in devfs or -D :-) according to devfs hole disks are named "disc"
according to -D they are named "disk"
to me the second is more correct, but as it was added just for devfs compatibility it should be probably changed to what devfs use "disc"

Good point, I'll go change that.

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#5 lore raw
In reply to Svetoslav Slavtchev
Quoted 8 lines · Svetoslav Slavtchev
Quoted 4 lines

Hi,

udev_bk is looking really great :-)
great work , isn't it time for a 0.009 or 0.1 release?

What's with the '.'? 009 will be the next release, hopefully soon, I'm waiting on some stuff from the libsysfs authors...

oops, sorry

Quoted 6 lines
Quoted 4 lines

let's start with the question

i'm still missing a number of devices, how should i get them in /udev ? these are the raw , pty and pts devices

pty and pts are handled by the devpts filesystem.

ok

Quoted 2 lines

For raw devices I have a patch floating around in my kernel tree that needs to be looked at a bunch. Care to test it out?

yep, not that i use them much,but i'll at least make some progress on the udev.rules
and i may try to push them to the mandrake kernel package, which will probably
return more responce :-)

Quoted 3 lines
Quoted 1 line

also does anyone have links to the patches that add sound support ?

Again, I have patches, but don't think they are ready for prime time.

same as previous comment, but i do listen music all the time :-)

Quoted 2 lines

I want to get these out soon, need to stop answering dumb devfs vs udev questions on lkml...

right, why not just upload all the patches you know of or have handy, to kernel.org/.../hotplug/ and add a big fat note they are experimental /* may be experimental at what level too, (applies, boots, runs, oopses) */ and add a small coment in the FAQ

this will probably spare you some time answering dumb question /* and would spare some time google-ing for others too :-) */

Quoted 11 lines
Quoted 4 lines

attached is my udev.rules,
which brings me directory structure almost(completely?) equivelent to the devfs one, except that some devices are still missing ( tree /udev = tree-udev.txt, missing entries from /dev = tree-dev.txt

)

Quoted 2 lines

and i'm not sure how can i distinguish a cd drive from a hard drive

For scsi cdroms it's easy, look at the type file in sysfs. For ide cdroms, code needs to be added to the kernel to export that information for you to determine this.

hm, i was browsing the thread a while ago, but didnt get it fully there were some issues with using 2 rules for one device, do hard disks/ tapes/... also has such a type file ?
do only scsi ones have it ?
i was thinking of

[address] type="hd" .... name1
[address] type="cd" ....name2

Quoted 7 lines
Quoted 5 lines

and there is a spelling issue either in devfs or -D :-) according to devfs hole disks are named "disc"
according to -D they are named "disk"
to me the second is more correct, but as it was added just for devfs compatibility it should be probably changed to what devfs use "disc"

Good point, I'll go change that.

wait a bit :-)
it seems that some special devices do use "disk",
while scsi/ide hard's use "disc"
/* devfs has THE naming policy, doesn't it?:) */

I think Arnd is looking into the issue

best,

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#6 lore raw
In reply to Svetoslav Slavtchev
Quoted 8 lines · Svetoslav Slavtchev
Quoted 5 lines
Quoted 1 line

and i'm not sure how can i distinguish a cd drive from a hard drive

For scsi cdroms it's easy, look at the type file in sysfs. For ide cdroms, code needs to be added to the kernel to export that information for you to determine this.

hm, i was browsing the thread a while ago, but didnt get it fully there were some issues with using 2 rules for one device,

You would not need 2 rules. One a "is this a cdrom" rule. If not, then it would fall down into the "is this a disk" rule. Something like:

	LABEL, BUS="scsi", type="cdrom", NAME="cdrom%n"
	LABEL, BUS="scsi", type="disk", NAME="lun0/%D"

You get the idea...

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#7 lore raw
In reply to Svetoslav Slavtchev
Quoted 8 lines · Svetoslav Slavtchev
Quoted 4 lines
Quoted 4 lines
Quoted 1 line

and i'm not sure how can i distinguish a cd drive from a hard drive

For scsi cdroms it's easy, look at the type file in sysfs. For ide cdroms, code needs to be added to the kernel to export that

information

Quoted 2 lines
Quoted 1 line

for you to determine this.

Quoted 8 lines
Quoted 2 lines

hm, i was browsing the thread a while ago, but didnt get it fully there were some issues with using 2 rules for one device,

You would not need 2 rules. One a "is this a cdrom" rule. If not, then it would fall down into the "is this a disk" rule. Something like:

	LABEL, BUS="scsi", type="cdrom", NAME="cdrom%n"
	LABEL, BUS="scsi", type="disk", NAME="lun0/%D"

You get the idea...

and what if it is a tape, scanner, or smth else ?

:-)
and where are the patches ?
:-)

best,

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#8 lore raw
In reply to Svetoslav Slavtchev
Quoted 11 lines · Svetoslav Slavtchev
Quoted 11 lines · Svetoslav Slavtchev
Quoted 4 lines
Quoted 4 lines
Quoted 1 line

and i'm not sure how can i distinguish a cd drive from a hard drive

For scsi cdroms it's easy, look at the type file in sysfs. For ide cdroms, code needs to be added to the kernel to export that

information

Quoted 4 lines
Quoted 1 line

for you to determine this.

hm, i was browsing the thread a while ago, but didnt get it fully there were some issues with using 2 rules for one device,

Quoted 7 lines
Quoted 5 lines

You would not need 2 rules. One a "is this a cdrom" rule. If not, then it would fall down into the "is this a disk" rule. Something like:

	LABEL, BUS="scsi", type="cdrom", NAME="cdrom%n"
	LABEL, BUS="scsi", type="disk", NAME="lun0/%D"

You get the idea...

and what if it is a tape, scanner, or smth else ?

I don't know the devfs naming scheme, so you will have to figure that out yourself :)

Quoted 1 line

and where are the patches ?

Working on getting them together. Need to get some USB fixes to Linus first, that's more important.

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#9 lore raw
In reply to Svetoslav Slavtchev
Quoted 21 lines · Svetoslav Slavtchev
Quoted 2 lines
Quoted 2 lines · Svetoslav Slavtchev
Quoted 1 line
Quoted 1 line
Quoted 1 line

and i'm not sure how can i distinguish a cd drive from a hard

drive

Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines

For scsi cdroms it's easy, look at the type file in sysfs. For

ide

Quoted 8 lines
Quoted 8 lines
Quoted 1 line
Quoted 1 line

cdroms, code needs to be added to the kernel to export that

information

Quoted 4 lines
Quoted 1 line

for you to determine this.

hm, i was browsing the thread a while ago, but didnt get it fully there were some issues with using 2 rules for one device,

You would not need 2 rules. One a "is this a cdrom" rule. If not,

then

Quoted 5 lines
Quoted 4 lines

it would fall down into the "is this a disk" rule. Something like:

	LABEL, BUS="scsi", type="cdrom", NAME="cdrom%n"
	LABEL, BUS="scsi", type="disk", NAME="lun0/%D"

You get the idea...

Quoted 4 lines
Quoted 1 line

and what if it is a tape, scanner, or smth else ?

I don't know the devfs naming scheme, so you will have to figure that out yourself :)

hm right ;-)

but it's also a feature, which is probably hard to implemet from userspace

it would be nice to name all devices acoring to their class, not according to the bus they are conected to, but this is obviously pretty interesting to implement from userspace

i'm starting to realise what a good consept devfs is/ was /* not talking from the code quality,
* and i'm not an experianced programmer
*/

Quoted 4 lines
Quoted 1 line

and where are the patches ?

Working on getting them together. Need to get some USB fixes to Linus first, that's more important.

ok, thanks

best,

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#10 lore raw
In reply to Svetoslav Slavtchev
Quoted 21 lines · Svetoslav Slavtchev
Quoted 2 lines
Quoted 2 lines · Svetoslav Slavtchev
Quoted 1 line
Quoted 1 line
Quoted 1 line

and i'm not sure how can i distinguish a cd drive from a hard

drive

Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines

For scsi cdroms it's easy, look at the type file in sysfs. For

ide

Quoted 8 lines
Quoted 8 lines
Quoted 1 line
Quoted 1 line

cdroms, code needs to be added to the kernel to export that

information

Quoted 4 lines
Quoted 1 line

for you to determine this.

hm, i was browsing the thread a while ago, but didnt get it fully there were some issues with using 2 rules for one device,

You would not need 2 rules. One a "is this a cdrom" rule. If not,

then

Quoted 5 lines
Quoted 4 lines

it would fall down into the "is this a disk" rule. Something like:

	LABEL, BUS="scsi", type="cdrom", NAME="cdrom%n"
	LABEL, BUS="scsi", type="disk", NAME="lun0/%D"

You get the idea...

Quoted 4 lines
Quoted 1 line

and what if it is a tape, scanner, or smth else ?

I don't know the devfs naming scheme, so you will have to figure that out yourself :)

on second thought, i think you missunderstood me

i ment that there shouldn't be a else clause
eg
rule1 type=a name=....
rule2 type=b name=...

so if i have devices type a, b, c, unknown
i don't wont devices c & unknown to be named as device type b if i used
rule1 type=a name=....
rule2 name=.. // catch all type b devices /* and sometimes other */ and i was asking wether all devices export their type
/* in the particular case about ide/scsi hd's */

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#11 lore raw
In reply to Svetoslav Slavtchev

Hi again :-)

Quoted 21 lines · Svetoslav Slavtchev
Quoted 2 lines
Quoted 2 lines · Svetoslav Slavtchev
Quoted 1 line
Quoted 1 line
Quoted 1 line

and i'm not sure how can i distinguish a cd drive from a hard

drive

Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines

For scsi cdroms it's easy, look at the type file in sysfs. For

ide

Quoted 8 lines
Quoted 8 lines
Quoted 1 line
Quoted 1 line

cdroms, code needs to be added to the kernel to export that

information

Quoted 4 lines
Quoted 1 line

for you to determine this.

hm, i was browsing the thread a while ago, but didnt get it fully there were some issues with using 2 rules for one device,

You would not need 2 rules. One a "is this a cdrom" rule. If not,

then

Quoted 5 lines
Quoted 4 lines

it would fall down into the "is this a disk" rule. Something like:

	LABEL, BUS="scsi", type="cdrom", NAME="cdrom%n"
	LABEL, BUS="scsi", type="disk", NAME="lun0/%D"

You get the idea...

Quoted 4 lines
Quoted 1 line

and what if it is a tape, scanner, or smth else ?

I don't know the devfs naming scheme, so you will have to figure that out yourself :)

again repling to myself :-)
it looks like scsi exports all the needed information, but i run ide and it doesn't export it :(

Quoted 4 lines
Quoted 1 line

and where are the patches ?

Working on getting them together. Need to get some USB fixes to Linus first, that's more important.

haven't you already submited them ?-)

i've extracted something from your tree usb-2.5
but i'm not sure if everything is in place, and
if i haven't missed some bits
could you may be take a look at MSxx series
http://varna.demon.co.uk/~svetlio/cook/2.6/udev/

it does boot and it seems to work
/* and my "/udev" is getting near to /dev filled by devfs */ although udev doesn't register 2 devices
under devfs - snd/seq & snd/timer

and i'm wondering how could i make a rule
to register a number of devices (with strange names :) ) with the same names in /udev/snd/ , not in /udev
----------------------------------------
[svetljo@svetljo snd]$ ls /dev/snd/
controlC0 midiC0D0 midiC0D2 pcmC0D0c pcmC0D1c
pcmC0D3p timer hwC0D0 midiC0D1 midiC0D3
pcmC0D0p pcmC0D2c seq
----------------------------------------

i couldn't find anything regarding raw
devices in the usb-2.5 tree :(

best,

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#12 lore raw
In reply to Svetoslav Slavtchev
Quoted 4 lines · Svetoslav Slavtchev

it would be nice to name all devices acoring to their class, not according to the bus they are conected to, but this is obviously pretty interesting to implement from userspace

That wouldn't be that hard, but remember, all block devices are of class "block", which is what I don't think you want :)

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#13 lore raw
In reply to Svetoslav Slavtchev
Quoted 1 line · Svetoslav Slavtchev

on second thought, i think you missunderstood me

I don't really understand your example. Can you give me a real example using udev rules?

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#14 lore raw
In reply to Svetoslav Slavtchev
Quoted 4 lines · Svetoslav Slavtchev

again repling to myself :-)
it looks like scsi exports all the needed information, but i run ide and it doesn't export it :(

Yes, ide needs kernel changes.

Quoted 6 lines
Quoted 4 lines
Quoted 1 line

and where are the patches ?

Working on getting them together. Need to get some USB fixes to Linus first, that's more important.

haven't you already submited them ?-)

Nope, I had a bunch more, they just went out...

Quoted 8 lines

and i'm wondering how could i make a rule
to register a number of devices (with strange names :) ) with the same names in /udev/snd/ , not in /udev
----------------------------------------
[svetljo@svetljo snd]$ ls /dev/snd/
controlC0 midiC0D0 midiC0D2 pcmC0D0c pcmC0D1c
pcmC0D3p timer hwC0D0 midiC0D1 midiC0D3
pcmC0D0p pcmC0D2c seq

I don't understand.

Quoted 2 lines

i couldn't find anything regarding raw
devices in the usb-2.5 tree :(

That's because it's in my inbox :)
It's also under active development by the patch author, so I'll hold off on it for a while untill they are happy with it.

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#15 lore raw
In reply to Svetoslav Slavtchev
Quoted 8 lines · Svetoslav Slavtchev
Quoted 4 lines

it would be nice to name all devices acoring to their class, not according to the bus they are conected to, but this is obviously pretty interesting to implement from userspace

That wouldn't be that hard, but remember, all block devices are of class "block", which is what I don't think you want :)

right,
i ment "type"

but except scsi i get only this :

[svetljo@svetljo tmp]$ find /sys -name "type"
/sys/class/net/sit0/type
/sys/class/net/eth2/type
/sys/class/net/eth1/type
/sys/class/net/eth0/type
/sys/class/net/lo/type

:(

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#16 lore raw
In reply to Svetoslav Slavtchev
Quoted 12 lines · Svetoslav Slavtchev
Quoted 8 lines · Svetoslav Slavtchev
Quoted 4 lines

it would be nice to name all devices acoring to their class, not according to the bus they are conected to, but this is obviously pretty interesting to implement from userspace

That wouldn't be that hard, but remember, all block devices are of class "block", which is what I don't think you want :)

right,
i ment "type"

Quoted 8 lines

but except scsi i get only this :

[svetljo@svetljo tmp]$ find /sys -name "type"
/sys/class/net/sit0/type
/sys/class/net/eth2/type
/sys/class/net/eth1/type
/sys/class/net/eth0/type
/sys/class/net/lo/type

But what do you mean by "type"? That's what all of the different subdirectories in /sys/class are for. Showing you that those are all devices of different types, grouped together. Block is the only one not located in this place (historical reasons, combined with some limitations in the driver class code, will be fixed in 2.7)

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#17 lore raw
In reply to Svetoslav Slavtchev
Quoted 6 lines · Svetoslav Slavtchev
Quoted 1 line

on second thought, i think you missunderstood me

I don't really understand your example. Can you give me a real example using udev rules?

NUMBER, BUS="ide", id="0.0", type="disk" \
NAME="ide/host0/bus0/target0/lun0/%D", SYMLINK="hda%n"
NUMBER, BUS="ide", id="0.1", type="disk" \
NAME="ide/host0/bus0/target1/lun0/%D", SYMLINK="hdb%n"
NUMBER, BUS="ide", id="1.0", type="disk" \
NAME="ide/host0/bus1/target0/lun0/%D", SYMLINK="hdc%n"
NUMBER, BUS="ide", id="1.1", type="disk" \
NAME="ide/host0/bus1/target1/lun0/%D", SYMLINK="hdd%n"

NUMBER, BUS="ide", id="0.0", type="cd" \
NAME="ide/host0/bus0/target0/lun0/cd", SYMLINK="hda"
NUMBER, BUS="ide", id="0.1", type="cd" \
NAME="ide/host0/bus0/target1/lun0/cd", SYMLINK="hdb"
NUMBER, BUS="ide", id="1.0", type="cd" \
NAME="ide/host0/bus1/target0/lun0/cd", SYMLINK="hdc"
NUMBER, BUS="ide", id="1.1", type="cd" \
NAME="ide/host0/bus1/target1/lun0/cd", SYMLINK="hdd"

i think this should theoretically work if ide exported the needed information,
and may be it works now on scsi, but there is one small issue there is no way to export smth similar to devfs

smth like we have to variables

int cd=0, disk=0

and use for the symlink rules :

NUMBER, BUS="ide", id="0.0", type="disk" \
NAME="ide/host0/bus0/target0/lun0/%D", \
SYMLINK="hda%n discs/disc%disc++"
NUMBER, BUS="ide", id="0.1", type="disk" \
NAME="ide/host0/bus0/target1/lun0/%D", \
SYMLINK="hdb%n discs/disc%disc++"
NUMBER, BUS="ide", id="1.0", type="disk" \
NAME="ide/host0/bus1/target0/lun0/%D", \
SYMLINK="hdc%n discs/disc%disc++"
NUMBER, BUS="ide", id="1.1", type="disk" \
NAME="ide/host0/bus1/target1/lun0/%D", \
SYMLINK="hdd%n discs/disc%disc++"

NUMBER, BUS="ide", id="0.0", type="cd" \
NAME="ide/host0/bus0/target0/lun0/cd", \
SYMLINK="hda cdrom%cd++"
NUMBER, BUS="ide", id="0.1", type="cd" \
NAME="ide/host0/bus0/target1/lun0/cd", \
SYMLINK="hdb cdrom%cd++"
NUMBER, BUS="ide", id="1.0", type="cd" \
NAME="ide/host0/bus1/target0/lun0/cd", \
SYMLINK="hdc cdrom%cd++"
NUMBER, BUS="ide", id="1.1", type="cd" \
NAME="ide/host0/bus1/target1/lun0/cd", \
SYMLINK="hdd cdrom%cd++"

so this should create the standard devfs files (NAME) and symlinks named acording to the order of registering/ finding the devices

:( i think i'm getting confused from my explanations :(

i'm getting really confused :(

may be a better idea would be to use the REPLACE
i've for alsa
REPLACE, KERNEL="admmidi", NAME="sound/admmidi", SYMLINK="admmidi" REPLACE, KERNEL="admmidi[1-9]", NAME="sound/admmidi%n", SYMLINK="admmidi%n"

and a devfs like implementation for cd's would be
REPLACE, KERNEL="cdrom", NAME="%D", SYMLINK="cdroms/cdrom cdrom" REPLACE, KERNEL="cdrom[1-9]*", NAME="%D", SYMLINK="cdroms/cdrom&n cdrom%n"

where %D should construct the full name like in
NAME="ide/host0/bus1/target0/lun0/cd
according to id="x:x"

forget it, i think i just confused you more :(

best,

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#18 lore raw
In reply to Svetoslav Slavtchev

<lots of rules snipped>

Quoted 1 line

forget it, i think i just confused you more :(

Heh, I think if you really want to do this complex of stuff, use the CALLOUT rule to do it yourself, outside of udev :)

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#19 lore raw
In reply to Svetoslav Slavtchev
Quoted 8 lines · Svetoslav Slavtchev
Quoted 4 lines

again repling to myself :-)
it looks like scsi exports all the needed information, but i run ide and it doesn't export it :(

Yes, ide needs kernel changes.

Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
Quoted 1 line

and where are the patches ?

Working on getting them together. Need to get some USB fixes to Linus first, that's more important.

haven't you already submited them ?-)

Nope, I had a bunch more, they just went out...

the rollup one :-), recompiling a kernel again

Quoted 10 lines
Quoted 8 lines

and i'm wondering how could i make a rule
to register a number of devices (with strange names :) ) with the same names in /udev/snd/ , not in /udev
----------------------------------------
[svetljo@svetljo snd]$ ls /dev/snd/
controlC0 midiC0D0 midiC0D2 pcmC0D0c pcmC0D1c
pcmC0D3p timer hwC0D0 midiC0D1 midiC0D3
pcmC0D0p pcmC0D2c seq

I don't understand.

REPLACE, KERNEL="controlC?", NAME="snd/controlC%1" REPLACE, KERNEL="hwC?D?", NAME="snd/hwC%1D%2c" REPLACE, KERNEL="midiC?D?", NAME="snd/midiC%1D%2" REPLACE, KERNEL="pcmC?D?c", NAME="snd/pcmC%1D%2c" REPLACE, KERNEL="pcmC?D?p", NAME="snd/pcmC%1D%2p"

is this possible ?

Quoted 6 lines
Quoted 2 lines

i couldn't find anything regarding raw
devices in the usb-2.5 tree :(

That's because it's in my inbox :)
It's also under active development by the patch author, so I'll hold off on it for a while untill they are happy with it.

:-)
could you foward it to me ?

i really want at least to make the udev.rules.devfs more complete /* which reminds me to ask a question */
does udev use both udev.rules and udev.rules.devfs
it would be really great if one could enable devfs like name in udev.conf and then udev checks udev.rules for user defined rules,
and additionally chains them to the devfs one's in udev.rules.devfs

best,

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#20 lore raw
In reply to Svetoslav Slavtchev
Quoted 6 lines

<lots of rules snipped>

Quoted 1 line

forget it, i think i just confused you more :(

Heh, I think if you really want to do this complex of stuff, use the CALLOUT rule to do it yourself, outside of udev :)

can a callout return several strings?
NAME="%c1", SYMLINK="%c2 %c3"

no i don't think this can be done with a callout script i think the way to go would be

REPLACE, KERNEL="cdrom", NAME="%D", SYMLINK="cdroms/cdrom cdrom" REPLACE, KERNEL="cdrom[1-9]*", NAME="%D", SYMLINK="cdroms/cdrom%n cdrom%n"

but this will require some bigger udev changes i assume, and will be a lot of work

best,

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#21 lore raw
In reply to Svetoslav Slavtchev
Quoted 4 lines · Svetoslav Slavtchev

can a callout return several strings?
NAME="%c1", SYMLINK="%c2 %c3"

no i don't think this can be done with a callout script

Try this patch if you like, to get special parts of the callout output.
This beast works now:
CALLOUT, BUS="scsi", PROGRAM="/bin/echo -n node link1 link2", ID="node *", NAME="%1c", SYMLINK="%2c %3c"

The callout returned string is separated by spaces and is addressed by the "len" value of the 'c' format char.
Since we support symlinks, this my be useful for other uses of callout too.

good luck,
Kay

02-get-part-of-callout-return-string.diff
introduce 'len number' for format chars
the first use is 'c'-the callout return to select a part of the output string like:
CALLOUT, BUS="scsi", PROGRAM="/bin/echo -n node link1 link2", ID="node *", NAME="%1c", SYMLINK="%2c %3c" (note: first part is requested by len=1, len=0 will return the whole string)
add a test to udev-test.pl

namedev.c +36 -5
diff -Nru a/namedev.c b/namedev.c
@@ -200,15 +200,30 @@
 static void apply_format(struct udevice *udev, unsigned char *string)
 {
 	char name[NAME_SIZE];
+	char temp[NAME_SIZE];
+	char *tail;
 	char *pos;
+	char *pos2;
+	char *pos3;
+	int num;
 
 	while (1) {
+		num = 0;
 		pos = strchr(string, '%');
 
 		if (pos) {
-			strfieldcpy(name, pos+2);
-			*pos = 0x00;
-			switch (pos[1]) {
+			*pos = '\0';
+			tail = pos+1;
+			if (isdigit(tail[0])) {
+				num = (int) strtoul(&pos[1], &tail, 10);
+				if (tail == NULL) {
+					dbg("format parsing error '%s'", pos+1);
+					break;
+				}
+			}
+			strfieldcpy(name, tail+1);
+
+			switch (tail[0]) {
 			case 'b':
 				if (strlen(udev->bus_id) == 0)
 					break;
@@ -241,8 +256,24 @@
 			case 'c':
 				if (strlen(udev->callout_value) == 0)
 					break;
-				strcat(pos, udev->callout_value);
-				dbg("substitute callout output '%s'", udev->callout_value);
+				if (num) {
+					/* get part of return string */
+					strncpy(temp, udev->callout_value, sizeof(temp));
+					pos2 = temp;
+					while (num) {
+						num--;
+						pos3 = strsep(&pos2, " ");
+						if (pos3 == NULL) {
+							dbg("requested part of callout string not found");
+							break;
+						}
+					}
+					strcat(pos, pos3);
+					dbg("substitute partial callout output '%s'", pos3);
+				} else {
+					strcat(pos, udev->callout_value);
+					dbg("substitute callout output '%s'", udev->callout_value);
+				}
 				break;
 			default:
 				dbg("unknown substitution type '%%%c'", pos[1]);
test/udev-test.pl +9 -0
diff -Nru a/test/udev-test.pl b/test/udev-test.pl
@@ -153,6 +153,15 @@
 EOF
 	},
 	{
+		desc     => "callout program substitution (numbered part of)",
+		subsys   => "block",
+		devpath  => "block/sda/sda3",
+		expected => "link1" ,
+		conf     => <<EOF
+CALLOUT, BUS="scsi", PROGRAM="/bin/echo -n node link1 link2", ID="node *", NAME="%1c", SYMLINK="%2c %3c"
+EOF
+	},
+	{
 		desc     => "devfs disk naming substitution",
 		subsys   => "block",
 		devpath  => "block/sda",
#22 lore raw
In reply to Svetoslav Slavtchev

Hi,

Quoted 12 lines · Svetoslav Slavtchev
Quoted 5 lines

can a callout return several strings?
NAME="%c1", SYMLINK="%c2 %c3"

no i don't think this can be done with a callout script

Try this patch if you like, to get special parts of the callout output. This beast works now:
CALLOUT, BUS="scsi", PROGRAM="/bin/echo -n node link1 link2", ID="node *", NAME="%1c", SYMLINK="%2c %3c"

Quoted 7 lines

The callout returned string is separated by spaces and is addressed by the "len" value of the 'c' format char.
Since we support symlinks, this my be useful for other uses of callout too.

good luck,
Kay

thanks a lot,

where could i find samples for callout scripts ? what information is available to the callout environment

with other words how should i construct one :-)

best,

svetljo

PS.

current udev -bk is not rpm friendly
the generation of udev.conf uses
a sed rule which conflicts with the
defaut rpm path for installing the binaries smth like $tmp/$name-$version-$release
^ ^
so this "-" break the "s-path-$udev_dir-" sed rule using ":" for delimiter fixes it

also
make DESTDIR=.... EXTRAS=/extras/scsi_id install tryes to install scsi_id in "/sbin" not in DESTDIR

PS.2
i also made rpms from today's bk
http://varna.demon.co.uk/~svetlio/cook/2.6/udev/

which reminds me to ask smth :-)
what are the advantages/ disadvantages
to compile using klibc ?

Quoted 12 lines

02-get-part-of-callout-return-string.diff
introduce 'len number' for format chars
the first use is 'c'-the callout return to select a part of the output
string like:
CALLOUT, BUS="scsi", PROGRAM="/bin/echo -n node link1 link2", ID="node
*", NAME="%1c", SYMLINK="%2c %3c"
(note: first part is requested by len=1, len=0 will return the whole
string)
add a test to udev-test.pl

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#23 lore raw
In reply to Svetoslav Slavtchev
Quoted 2 lines · Svetoslav Slavtchev

where could i find samples for callout scripts ? what information is available to the callout environment

this is the rule:
CALLOUT, BUS="usb", PROGRAM="/tmp/x this is the bus %b", ID="*", NAME="%1c", SYMLINK="%2c"

this is the callout script:
#!/bin/sh
echo $* >> /tmp/callout-args
set >/tmp/callout-env
echo -n "aaa bbb"

it creates:
/udev/
|-- aaa
`-- bbb -> ./aaa

callout-args file made by the script contains:
this is the bus 1-1.1

callout-env file made by the script contains something like this:
ACTION­d
DEVPATH=/class/video4linux/video0
EUID=0
GROUPS=()
HOME=/
PATH=/sbin:/bin:/usr/sbin:/usr/bin
PPID479
PWD=/
SEQNUM90
SHELL=/bin/bash SHELLOPTS=braceexpand:hashall:interactive-comments:posix UID=0

thanks,
Kay

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#24 lore raw
In reply to Svetoslav Slavtchev
Quoted 6 lines · Kay Sievers

02-get-part-of-callout-return-string.diff
introduce 'len number' for format chars
the first use is 'c'-the callout return to select a part of the output string like:
CALLOUT, BUS="scsi", PROGRAM="/bin/echo -n node link1 link2", ID="node *", NAME="%1c", SYMLINK="%2c %3c" (note: first part is requested by len=1, len=0 will return the whole string)
add a test to udev-test.pl

Nice, I've applied this.

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#25 lore raw
In reply to Svetoslav Slavtchev
Quoted 3 lines · Svetoslav Slavtchev

i really want at least to make the udev.rules.devfs more complete /* which reminds me to ask a question */
does udev use both udev.rules and udev.rules.devfs

Nope.

Quoted 2 lines

it would be really great if one could enable devfs like name in udev.conf and then udev checks udev.rules for user defined rules,

What user? How does the kernel know what user a device is for? :)

Quoted 1 line

and additionally chains them to the devfs one's in udev.rules.devfs

Nah, if you want a devfs like udev config, you will have to specify it. Remember you are not the "normal" user of udev by any means.

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#26 lore raw
In reply to Svetoslav Slavtchev
Quoted 2 lines · Svetoslav Slavtchev

what are the advantages/ disadvantages
to compile using klibc ?

A very tiny static executable is created using klibc. That's necessary for early boot, and people who care about the size of things.

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#27 lore raw
In reply to Svetoslav Slavtchev
Quoted 10 lines · Svetoslav Slavtchev
Quoted 4 lines

i really want at least to make the udev.rules.devfs more complete /* which reminds me to ask a question */
does udev use both udev.rules and udev.rules.devfs

Nope.

Quoted 1 line

it would be really great if one could enable devfs like name in

udev.conf

Quoted 9 lines
Quoted 1 line

and then udev checks udev.rules for user defined rules,

What user? How does the kernel know what user a device is for? :)

Quoted 1 line

and additionally chains them to the devfs one's in udev.rules.devfs

Nah, if you want a devfs like udev config, you will have to specify it. Remember you are not the "normal" user of udev by any means.

let's put it this way:
i'm tring to figure out a way to replace devfs by udev in mandrake linux
it's next version will ship with both 2.4 & 2.6 kernel, and mandrake has used devfs since it switched to the 2.4 kernel so devfs compatibility is quite needed

if we use a single configuration file for creating devfs compatible devices and for user defined rules IMHO it's getting a bit messy
so i think it would be good to use two separate files
one just for user defined rules - e.g. BUS="usb" type="cdrom" NAME="usb-cdrw"
and one for devfs compatibilty

best,

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#28 lore raw
In reply to Svetoslav Slavtchev
Quoted 7 lines · Svetoslav Slavtchev
Quoted 2 lines

what are the advantages/ disadvantages
to compile using klibc ?

A very tiny static executable is created using klibc. That's necessary for early boot, and people who care about the size of things.

thanks for the explanation :-)

could you drop the link to linux source (IIRC ../../gregkh-2.5 ) in udev/klibc, and replace it with
make KERNEL_DIR=...... USE_KLIBC=true

i've a small patch but it's only for udev,
and it doesn't work with " make USE_KLIBC=true EXTRAS=..." it's mostly s:$(LINUX_INCLUDE_DIR)/kernel/include:$(KERNEL_DIR)/include:
in udev/Makefile & udev/klibc/MCONFIG

and i have a small issue with klibc compiled udev,
at least bk from a 1-2 days ago
most devicefs alike rules are followed, but not all
e.g the rule for loop devices is ignored by dev compailed against klibc, but is followed by udev compiled against libc

there are two more small issues/ questions

could you change the sed rule for generating udev.conf to use ":" instead "-" for separater, as it's getting confused if you install to RPM_BUILD_ROOT/udev-$(version)/

                                                              ^^^

and the question
how should i compile udev to use shared libraries,
not to link it staticaly? static udev using libc is arround 500k, so it's a way too big for initrd,
why not have a klibc udev static binary for initrd,
and a not static one against libc to manage the devices, after root is mounted and the libraries are available

best,

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#29 lore raw
In reply to Svetoslav Slavtchev
Quoted 7 lines · Svetoslav Slavtchev
Quoted 2 lines

what are the advantages/ disadvantages
to compile using klibc ?

A very tiny static executable is created using klibc. That's necessary for early boot, and people who care about the size of things.

hm
one more note

udev.permissions seems to be tottaly ignored by udev compiled against klibc ?
all devices are owned by root:root,
with libc udev i do have root:video, root:audio, ....

best,

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#30 lore raw
In reply to Svetoslav Slavtchev
Quoted 8 lines · Svetoslav Slavtchev
Quoted 7 lines · Svetoslav Slavtchev
Quoted 2 lines

what are the advantages/ disadvantages
to compile using klibc ?

A very tiny static executable is created using klibc. That's necessary for early boot, and people who care about the size of things.

Quoted 5 lines

thanks for the explanation :-)

could you drop the link to linux source (IIRC ../../gregkh-2.5 ) in udev/klibc, and replace it with
make KERNEL_DIR=...... USE_KLIBC=true

Hm, the udev/linux symlink points to:

	linux -> ../../../linux/linux-2.5

If you want to build with klibc, adjust it to where your 2.6 kernel tree is located at.

Quoted 5 lines

i've a small patch but it's only for udev,
and it doesn't work with " make USE_KLIBC=true EXTRAS=..." it's mostly s:$(LINUX_INCLUDE_DIR)/kernel/include:$(KERNEL_DIR)/include:
in udev/Makefile & udev/klibc/MCONFIG

Care to send it?

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#31 lore raw
In reply to Svetoslav Slavtchev
Quoted 5 lines · Svetoslav Slavtchev

and i have a small issue with klibc compiled udev,
at least bk from a 1-2 days ago
most devicefs alike rules are followed, but not all
e.g the rule for loop devices is ignored by dev compailed against klibc, but is followed by udev compiled against libc

See the man page for why this is:
If udev was built using klibc or is used before the user database is accessible (e.g. initrd(4)), only numeric owner and group values may be used.

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#32 lore raw
In reply to Svetoslav Slavtchev
Quoted 4 lines · Svetoslav Slavtchev

could you change the sed rule for generating udev.conf to use ":" instead "-" for separater, as it's getting confused if you install to RPM_BUILD_ROOT/udev-$(version)/

What do you mean? The sed rule:

	sed -e "s-@udevdir@-$(udevdir)-" < udev.conf.in > $@

doesn't work for you? If not, patches to fix it are appreciated.

Quoted 7 lines

and the question
how should i compile udev to use shared libraries,
not to link it staticaly? static udev using libc is arround 500k, so it's a way too big for initrd,
why not have a klibc udev static binary for initrd,
and a not static one against libc to manage the devices, after root is mounted and the libraries are available

Ok, changes to the Makefile to make the glibc build dynamic are welcome.

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#33 lore raw
In reply to Svetoslav Slavtchev
Quoted 8 lines · Svetoslav Slavtchev
Quoted 7 lines · Svetoslav Slavtchev
Quoted 2 lines

what are the advantages/ disadvantages
to compile using klibc ?

A very tiny static executable is created using klibc. That's necessary for early boot, and people who care about the size of things.

Quoted 7 lines

hm
one more note

udev.permissions seems to be tottaly ignored by udev compiled against klibc ?
all devices are owned by root:root,
with libc udev i do have root:video, root:audio, ....

See the man page for why:
If udev was built using klibc or is used before the user database is accessible (e.g. initrd(4)), only numeric owner and group values may be used.

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#34 lore raw
In reply to Svetoslav Slavtchev
Quoted 11 lines · Greg KH
Quoted 5 lines · Svetoslav Slavtchev

and i have a small issue with klibc compiled udev,
at least bk from a 1-2 days ago
most devicefs alike rules are followed, but not all
e.g the rule for loop devices is ignored by dev compailed against klibc, but is followed by udev compiled against libc

See the man page for why this is:
If udev was built using klibc or is used before the user database is accessible (e.g. initrd(4)), only numeric owner and group values may be used.

bah, wrong answer to the wrong question, sorry...

It's a timing issue mostly. I bet that udev is beating the kernel. The klibc version is faster, as the code is much smaller. I'm working on the proper fix for this now that we have the needed changes in libsysfs for me to do this.

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#35 lore raw
In reply to Svetoslav Slavtchev
Quoted 20 lines · Svetoslav Slavtchev
Quoted 12 lines · Svetoslav Slavtchev
Quoted 1 line

it would be really great if one could enable devfs like name in

udev.conf

Quoted 1 line

and then udev checks udev.rules for user defined rules,

What user? How does the kernel know what user a device is for? :)

Quoted 1 line

and additionally chains them to the devfs one's in udev.rules.devfs

Nah, if you want a devfs like udev config, you will have to specify it. Remember you are not the "normal" user of udev by any means.

let's put it this way:
i'm tring to figure out a way to replace devfs by udev in mandrake linux
it's next version will ship with both 2.4 & 2.6 kernel, and mandrake has used devfs since it switched to the 2.4 kernel so devfs compatibility is quite needed

Quoted 6 lines

if we use a single configuration file for creating devfs compatible devices and for user defined rules IMHO it's getting a bit messy
so i think it would be good to use two separate files
one just for user defined rules - e.g. BUS="usb" type="cdrom" NAME="usb-cdrw"
and one for devfs compatibilty

We could add "include" support for the config files, but why not just generate your "master" config file whenever the config is changed. cpp or any other text processing program could easily generate a master config from multiple config files.

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#36 lore raw
In reply to Svetoslav Slavtchev
Quoted 4 lines · Greg KH

We could add "include" support for the config files, but why not just generate your "master" config file whenever the config is changed. cpp or any other text processing program could easily generate a master config from multiple config files.

I considered doing this for the debian package (like I do e.g. for modprobe.conf), but it has the downside that every distribution would probably do it a different way.

Signature · 13 lines
ciao, |
Marco | [3661 trH1jh9pQiypw]


-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#37 lore raw
In reply to Svetoslav Slavtchev
Quoted 22 lines · Svetoslav Slavtchev
Quoted 5 lines
Quoted 5 lines · Svetoslav Slavtchev
Quoted 2 lines

what are the advantages/ disadvantages
to compile using klibc ?

A very tiny static executable is created using klibc. That's

necessary

Quoted 8 lines
Quoted 2 lines

for early boot, and people who care about the size of things.

thanks for the explanation :-)

could you drop the link to linux source (IIRC ../../gregkh-2.5 ) in udev/klibc, and replace it with
make KERNEL_DIR=...... USE_KLIBC=true

Hm, the udev/linux symlink points to:

	linux -> ../../../linux/linux-2.5

If you want to build with klibc, adjust it to where your 2.6 kernel tree is located at.

Quoted 7 lines
Quoted 5 lines

i've a small patch but it's only for udev,
and it doesn't work with " make USE_KLIBC=true EXTRAS=..." it's mostly s:$(LINUX_INCLUDE_DIR)/kernel/include:$(KERNEL_DIR)/include:
in udev/Makefile & udev/klibc/MCONFIG

Care to send it?

thanks :-)

and attached
together with the sed rule correction

svetljo

Signature · 2 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net
Makefile renamed from Makefile.orig +1 -1
@@ -208,7 +208,7 @@
 
 # Rules on how to create the generated config files
 udev.conf:
-	sed -e "s-@udevdir@-$(udevdir)-" < udev.conf.in > $@
+	sed -e "s:@udevdir@:$(udevdir):" < udev.conf.in > $@
 
 
 $(OBJS): $(GEN_HEADERS)
Makefile renamed from Makefile.orig +5 -1
@@ -31,6 +31,10 @@
 RELEASE_NAME =	$(ROOT)-$(VERSION)
 
 DESTDIR =
+ifndef KERNEL_DIR
+KERNEL_DIR=/usr/src/linux
+endif
+
 # override this to make udev look in a different location for it's config files
 prefix =
 exec_prefix =	${prefix}
@@ -119,7 +123,7 @@
 	KLIBC_BASE	= $(PWD)/klibc
 	KLIBC_DIR	= $(KLIBC_BASE)/klibc
 	INCLUDE_DIR	:= $(KLIBC_DIR)/include
-	LINUX_INCLUDE_DIR	:= $(KLIBC_BASE)/linux/include
+	LINUX_INCLUDE_DIR	:= $(KERNEL_DIR)/include
 	include $(KLIBC_DIR)/arch/$(ARCH)/MCONFIG
 	# arch specific objects
 	ARCH_LIB_OBJS =	\
klibc/MCONFIG renamed from klibc/MCONFIG.orig +1 -1
@@ -12,7 +12,7 @@
 	  -I$(KLIBSRC)/arch/$(ARCH)/include \
 	  -I$(KLIBSRC)/include/bits$(BITSIZE) \
 	  -D__KLIBC__ -DBITSIZE=$(BITSIZE) -I$(KLIBSRC)/include \
-	  -I$(SRCROOT)/linux/include
+	  -I$(KERNEL_DIR)/include
 LDFLAGS =
 AR      = $(CROSS)ar
 RANLIB  = $(CROSS)ranlib
#38 lore raw
In reply to Svetoslav Slavtchev
Quoted 10 lines · Svetoslav Slavtchev
Quoted 4 lines

could you change the sed rule for generating udev.conf to use ":" instead "-" for separater, as it's getting confused if you install to RPM_BUILD_ROOT/udev-$(version)/

What do you mean? The sed rule:

	sed -e "s-@udevdir@-$(udevdir)-" < udev.conf.in > $@

doesn't work for you? If not, patches to fix it are appreciated.

yes, it breaks if $(udevdir) contains "-"

patch attached in previous mail :-)

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#39 lore raw
In reply to Svetoslav Slavtchev
Quoted 8 lines · Greg KH
Quoted 7 lines · Svetoslav Slavtchev
Quoted 5 lines

and i have a small issue with klibc compiled udev,
at least bk from a 1-2 days ago
most devicefs alike rules are followed, but not all
e.g the rule for loop devices is ignored by dev compailed against klibc, but is followed by udev compiled against libc

Quoted 4 lines
Quoted 4 lines

See the man page for why this is:
If udev was built using klibc or is used before the user database is accessible (e.g. initrd(4)), only numeric owner and group values may be used.

ok, thanks

Quoted 6 lines

bah, wrong answer to the wrong question, sorry...

It's a timing issue mostly. I bet that udev is beating the kernel. The klibc version is faster, as the code is much smaller. I'm working on the proper fix for this now that we have the needed changes in libsysfs for me to do this.

with udev 009 libc all rules are ignored :
and all devices are dumped in /udev (

any ideas ?

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#40 lore raw
In reply to Svetoslav Slavtchev
Quoted 30 lines · Svetoslav Slavtchev
Quoted 10 lines
Quoted 10 lines · Svetoslav Slavtchev
Quoted 1 line

it would be really great if one could enable devfs like name in

udev.conf

Quoted 1 line

and then udev checks udev.rules for user defined rules,

What user? How does the kernel know what user a device is for? :)

Quoted 1 line

and additionally chains them to the devfs one's in udev.rules.devfs

Nah, if you want a devfs like udev config, you will have to specify

it.

Quoted 11 lines
Quoted 2 lines

Remember you are not the "normal" user of udev by any means.

let's put it this way:
i'm tring to figure out a way to replace devfs by udev in mandrake linux
it's next version will ship with both 2.4 & 2.6 kernel, and mandrake has used devfs since it switched to the 2.4 kernel so devfs compatibility is quite needed

if we use a single configuration file for creating devfs compatible

devices

Quoted 5 lines

and for user defined rules IMHO it's getting a bit messy so i think it would be good to use two separate files one just for user defined rules - e.g. BUS="usb" type="cdrom" NAME="usb-cdrw"
and one for devfs compatibilty

Quoted 4 lines

We could add "include" support for the config files, but why not just generate your "master" config file whenever the config is changed. cpp or any other text processing program could easily generate a master config from multiple config files.

i was also thinking of an "include"
and i think it's more elegant then some bash scripts or the like :-)

svetljo

Signature · 15 lines
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
#41 lore raw
In reply to Svetoslav Slavtchev
Quoted 10 lines · Svetoslav Slavtchev
Quoted 5 lines

It's a timing issue mostly. I bet that udev is beating the kernel. The klibc version is faster, as the code is much smaller. I'm working on the proper fix for this now that we have the needed changes in libsysfs for me to do this.

with udev 009 libc all rules are ignored :
and all devices are dumped in /udev (

any ideas ?

Does the udev-test.pl script work? (you need to be root when running it.)

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel