aboutsummaryrefslogtreecommitdiffstats
path: root/chapter06/hotplug.xml
diff options
context:
space:
mode:
Diffstat (limited to 'chapter06/hotplug.xml')
-rw-r--r--chapter06/hotplug.xml47
1 files changed, 28 insertions, 19 deletions
diff --git a/chapter06/hotplug.xml b/chapter06/hotplug.xml
index 31ddf022f..dccc2cf3f 100644
--- a/chapter06/hotplug.xml
+++ b/chapter06/hotplug.xml
@@ -11,10 +11,11 @@
<sect2 role="package"><title/>
-<para>The Hotplug package contains scripts that react upon various changes
-in the kernel state, in particular, addition and removal of hardware. This
-package also detects existing hardware during boot and inserts the relevant
-modules into the running kernel.
+<para>The Hotplug package contains scripts that react upon hotplug events
+generated by the kernel. Such events correspond to every change in the
+in the kernel state visible in the "sysfs" filesystem, e.g., the addition and
+removal of hardware. This package also detects existing hardware during
+boot and inserts the relevant modules into the running kernel.
</para>
<segmentedlist>
<segtitle>&buildtime;</segtitle>
@@ -28,31 +29,34 @@ modules into the running kernel.
<title>Installation of Hotplug</title>
<para>
-Apply the patch that avoids bogus dependencies of the
-<command>usb.rc</command> script
-upon <application>which</application> and
-<application>usbutils</application> packages:
+The <command>usb.rc</command> script provided by the
+<application>Hotplug</application> package depends on the programs
+<command>usbutils</command> and <command>which</command> being present.
+However, these programs are not called for any useful purpose.
+Apply the patch that removes those dependencies:
</para>
<screen><userinput>patch -Np1 -i ../hotplug-&hotplug-version;-bogus_deps-1.patch</userinput></screen>
<para>
-USB coldplugging is somewhat broken in Hotplug by default. Fix this with the
-following patch:
+USB coldplugging is somewhat broken in <application>Hotplug</application>
+by default: the DEVICE environment variable is not passed to user-defined USB
+hotplug handlers. Fix this with the following patch:
</para>
<screen><userinput>patch -Np1 -i ../hotplug-&hotplug-version;-device-2.patch</userinput></screen>
+<!-- Waiting for hotplug-2004_04_01-isapnp-4.patch
<para>
-At last, there is an optional patch that adds ISAPNP hardware detection
-capabilities to Hotplug. It is not well tested. If you chose to apply it,
-run the following command:
+There is an optional patch that adds ISAPNP hardware detection
+capabilities to Hotplug. It is not well tested and in fact contains known
+bugs. If you chose to apply it, run the following command:
</para>
<screen><userinput>patch -Np1 -i ../hotplug-&hotplug-version;-isapnp-2.patch</userinput></screen>
+-->
-
-<para>And finally install the Hotplug package:</para>
+<para>Now install the Hotplug package:</para>
<screen><userinput>make install</userinput></screen>
@@ -61,6 +65,11 @@ the script including with LFS-Bootscripts:</para>
<screen><userinput>rm -rf /etc/init.d</userinput></screen>
+<para>Network device hotplugging is not supported by LFS bootscripts yet. For
+that reason, remove the network hotplug agent:</para>
+
+<screen><userinput>rm -f /etc/hotplug/net.agent</userinput></screen>
+<!-- Will be useless with version 4 of the isapnp patch
<para>
If you have applied the ISAPNP patch, add some required entries to
<filename>/etc/modprobe.conf</filename>:</para>
@@ -81,7 +90,7 @@ EOF</userinput></screen>
<para>These entries may not be needed in newer versions of the Linux kernel,
since Marco d'Itri will try to convince developers to put them into the
corresponding modules themselves.</para>
-
+-->
</sect2>
@@ -109,8 +118,8 @@ specific actions upon hardware already present during system startup.
They are called by the <filename>hotplug</filename> initscript that comes
from the lfs-bootscripts package.
The <command>*.rc</command>
-scripts try to find kernel modules corresponding to your hardware and insert
-them into the running kernel.
+scripts try to recover hotplug events that were lost during system boot
+because, e.g., the root filesystem was not mounted by the kernel.
</para>
</listitem>
</varlistentry>
@@ -179,7 +188,7 @@ call for each USB device, based on its vendor, id and other attributes.
<indexterm zone="ch-system-hotplug hotplug-hotplug.d"><primary
sortas="e-/etc/hotplug.d">/etc/hotplug.d</primary></indexterm>
<para>This directory contains programs (or symlinks to them)
-that are interested in receiving all hotplug events. E.g.,
+that are interested in receiving hotplug events. E.g.,
<application>udev</application> puts its symlink here during installation.
</para>
</listitem>