NoMoreDevfs

Revision 4 as of 2006-06-05 17:09:38

Clear message
  • Launchpad Entry: https://launchpad.net/distros/ubuntu/+spec/no-more-devfs

  • Created: Date(2006-06-05T16:09:16Z) by ColinWatson

  • Contributors: ColinWatson

  • Packages affected: aboot-installer autopartkit base-installer colo-installer hw-detect kbd-chooser libdebian-installer lilo-installer lowmem lvmcfg mdcfg mountfloppy nobootloader oldsys-preseed os-prober partconf partitioner partman-auto-lvm partman-base partman-crypto partman-lvm partman-md partman-target rootskel s390-dasd sibyl-installer userdevfs vmelilo-installer

Summary

As of Ubuntu 5.10 (and to some extent still in 6.06), the Ubuntu installer relies on devfs pathnames, which are nonstandard. We should stop using them.

Rationale

Many components of the Ubuntu installer (both text-mode and graphical) are descended from code that was written in Debian for use on Linux 2.4, where the installer used devfs. In fact, the same code upstream still optionally runs on Linux 2.4. As a result, there are various assumptions of devfs pathnames scattered around the codebase, which requires extra support code in udev just for the installer (and udev's support for enumerated devices is sometimes unreliable, so should be avoided), breaks Ubiquity in the event we accidentally run across it, and causes confusion. We should make all installer code work in the absence of devfs paths.

Use cases

This is an infrastructure specification; there are no concrete use cases, although this work will probably fix a number of complicated bugs in the area of installer hardware detection.

Scope

Remove hardcoded device paths where possible; otherwise introduce abstraction layers that can cope with either devfs or normal device paths. Where possible, ensure that the modified code will still work with devfs, so that the code can be contributed upstream.

Design

The following is a pared-down list of suspicious uses of /dev (note that this was generated from an upstream d-i tree, so contains packages not relevant to Ubuntu): attachment:d-i-dev.txt

Implementation

Code

Data preservation and migration

Outstanding issues

BoF agenda and discussion


CategorySpec