HardwareActivation
Launchpad Entry: https://launchpad.net/distros/ubuntu/+spec/hardware-activation
Created: Date(2005-10-27T19:28:20Z) by JaneWeideman
Contributors: JaneWeideman, ScottJamesRemnant, JeffBailey
Packages affected:
Summary
Our current boot process has parts that rely on certain pieces of hardware being available, such as networking, bluetooth, sound and printers. We should instead provide a means to activate these when the hardware is detected rather than assuming it exists, and move the startup scripts into activation scripts instead.
Rationale
Solve the problem that coldplugging needs to complete before carrying on. This completing must be based on kernel events.
Specifically, this spec does NOT cover activating various services based on kernel events. This is too invasive for the Dapper release.
Use cases
Scope
Design
New Initramfs:
o Create base device nodes o Start udevd o Load modules from /etc/mkinitramfs/modules (and other force_load calls)
** Note: without udevstart, something needs to correct permissions, or we need to provide the rules.
o Walk the sysfs tree for harddrive devices and tickle uevents for those o Walk the ide, scsi, and i2o busses o Attempt hibernate recovery o Walk the pci sysfs tree for usb controllers
Implementation
Update to UDEV 071. Add scoreboard to udevd. Track scoreboard status during coldplug by looking for existance of /dev/.udev_scoreboard. We create the file initially, and udev will unlink it.
Code
Data preservation and migration
Outstanding issues