From a0d96d25cf2965a6abbc0990b38089acb377d179 Mon Sep 17 00:00:00 2001 From: Archaic Date: Thu, 13 Apr 2006 20:17:52 +0000 Subject: Tweaked some of the educational text regarding udev. git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@7510 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689 --- chapter06/kernfs.xml | 7 +++---- chapter07/udev.xml | 44 ++++++++++++++++++++------------------------ 2 files changed, 23 insertions(+), 28 deletions(-) diff --git a/chapter06/kernfs.xml b/chapter06/kernfs.xml index 3c9e68c0b..034d60422 100644 --- a/chapter06/kernfs.xml +++ b/chapter06/kernfs.xml @@ -31,10 +31,9 @@ device nodes, in particular the console and null devices. The device nodes will be created - on the hard disk so that they are available before udev - has been started, and additionally when Linux is started in single user mode - (hence the restrictive permissions on console). Create the devices by running the + on the hard disk so that they are available before udevd + has been started, and additionally when Linux is started with + init=/bin/bash. Create the devices by running the following commands: mknod -m 600 $LFS/dev/console c 5 1 diff --git a/chapter07/udev.xml b/chapter07/udev.xml index 7d4bcc495..2785a6b20 100644 --- a/chapter07/udev.xml +++ b/chapter07/udev.xml @@ -95,24 +95,24 @@ Udev Bootscript The S10udev initscript takes care of creating - device nodes when Linux is booted. The script starts by unsetting the - hotplug event handler from the default of /sbin/hotplug - This is done because, instead of the kernel calling out to an external - binary, udevd will listen on a netlink socket for - hotplug events that the kernel raises. The bootscript copies any static + device nodes when Linux is booted. The script unsets the uevent handler + from the default of /sbin/hotplug. This is done + because the kernel no longer needs to call out to an external binary. + Instead udevd will listen on a netlink socket for + uevents that the kernel raises. Next, the bootscript copies any static device nodes that exist in /lib/udev/devices to /dev. This is necessary because some devices, - directories and symlinks are needed before the dynamic device handling + directories, and symlinks are needed before the dynamic device handling processes are available during the early stages of booting a system. - Creating static device nodes in - /lib/udev/devices also provides - an easy workaround for devices that are not supported by the dynamic - device handling infrastructure. The bootscript then starts the Udev - daemon, udevd, which will act on any hotplug events it - receives. Finally, the bootscript "coldplugs" any devices that - have already been registered with the kernel by forcing them to raise - hotplug events which udevd will then handle. + Creating static device nodes in /lib/udev/devices also provides an easy + workaround for devices that are not supported by the dynamic device + handling infrastructure. The bootscript then starts the Udev daemon, + udevd, which will act on any uevents it receives. + Finally, the bootscript forces the kernel to replay uevents for any + devices that have already been registered and then waits for + udevd to handle them. @@ -177,7 +177,7 @@ When you plug in a device, such as a Universal Serial Bus (USB) MP3 player, the kernel recognizes that the device is now connected and - generates a hotplug event. This hotplug event is then handled by + generates a uevent. This uevent is then handled by udevd as described above. @@ -197,10 +197,8 @@ bus driver properly exports the necessary aliases to sysfs. In other cases, one should arrange module loading by other means. With Linux-&linux-version;, Udev is - known to load properly-written drivers for PCI, USB, SCSI, SERIO and - FireWire devices. - - + known to load properly-written drivers for INPUT, IDE, PCI, USB, SCSI, + SERIO and FireWire devices. To determine if the device driver you require has the necessary support for Udev, run modinfo with the module name as @@ -217,10 +215,8 @@ If there is no modalias file in the relevant directory under /sys/bus, this means that the kernel developers have not yet added modalias support to - this bus type. With Linux-&linux-version;, this is the case with ISA and - IDE busses. Expect this issue to be fixed in later kernel versions. - - + this bus type. With Linux-&linux-version;, this is the case with ISA + busses. Expect this issue to be fixed in later kernel versions. Udev is not intended to load wrapper drivers such as snd-pcm-oss and non-hardware drivers such as @@ -269,7 +265,7 @@ Udev creates a device incorrectly, or makes a wrong symlink This usually happens if a rule unexpectedly matches a device. For - example, a poorly-writen rule can match by both a SCSI disk (as desired) + example, a poorly-writen rule can match both a SCSI disk (as desired) and the corresponding SCSI generic device (incorrectly) by vendor. Increase the logging verbosity of Udev, find the offending rule by examining the logs and make it more specific. -- cgit v1.2.3-54-g00ecf