[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: udev and /usr



On Fri, Sep 04, 2009 at 12:59:10AM -0400, Felipe Sateler wrote:
> >>> The issue was raised by the udev upstream maintainer along with the udev
> >>> package maintainers of the major distributions, who all agreed that this
> >>> configuration is not supported.
> >> FYI, udev 146 ships usb-id and pci-id programs which read
> >> /usr/share/misc/usb.ids and /usr/share/misc/pci.ids .
> >> udev itself does not care about the results of these programs but other
> >> programs which used to use HAL may do, leading to subtle breakage.

> > Reading again your mail, I think we are discussing a inexistent problem.

> > You say that "some programs which use HAL may do" use /usr/share.

> Hal also lives on /usr, so I don't see the problem either.

The problem is this:

 - In udev 146 and above, a number of the stock udev rules call the
   /lib/udev/{pci,usb}-db helpers to query the vendor name / product name
   and and this information to the udev environment.
 - These helpers work by parsing the pci.ids and usb.ids databases, which
   have long had standard locations that are *not* in /lib (either in /usr
   or in /var, both of which are allowed to be separate filesystems under
   the FHS).
 - Now that there are udev rules exporting this information, arbitrary other
   components in the stack may come to rely on this information being
   available (but we don't seem to know what components; the rationale for
   this facility being added to udev so far is pretty opaque, though
   whatever it is can't be good).
 - These udev rules are applied from runlevel S, before /usr or /var are
   guaranteed to be mounted.  That means that any device which is detected
   by the kernel before this point (such as non-hotpluggable PCI devices)
   will have different information exported by udev depending on whether
   /usr and /var are on the root filesystem.

I still can't fathom why someone decided that udev should be responsible for
translating PCI IDs and USB IDs into text strings.  This smells of crazy.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org

Attachment: signature.asc
Description: Digital signature


Reply to: