On 1/12/2011 11:31 AM, Nuno J. Silva wrote:
> Michael Sullivan <msulli1...@gmail.com> writes:
> 
>> OK, for several years I have not had a /dev/cdrom.  My workstation has
>> an internal cd-rom drive, which gets mapped to /dev/hda, and an external
> 
> If you're using a recent kernel, it's probably udev which refuses to
> process devices under the old ATA driver.
> 
> (I don't know if it *exactly* refuses, or if it's something else, but
> the final result is what you see, no /dev/{cdrom,cdrw,...} link)

The problem, as far as I could figure out, is that the ID_PATH that udev
gets from the old ATA drivers is identical for everything on the same
IDE controller; it basically gives the path to the PCI bus slot where
the IDE controller is connected.  So udev has no way to differentiate
between multiple drives connected to a single controller.  This is a
change at some point from the previous behavior, which specified the IDE
information as well.

You used to get something like:

ENV{ID_PATH}=="pci-0000:00:1f.1-ide-0:0"

and now you get:

ENV{ID_PATH}=="pci-0000:00:1f.1"

Switching over to libata gives you:

ENV{ID_PATH}=="pci-0000:00:1f.1-scsi-0:0:0:0"

which returns everything to working order :)

--Mike

Reply via email to