Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 358629 - udev no longer creates basic devices that are essential
Summary: udev no longer creates basic devices that are essential
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: Normal major (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-12 23:40 UTC by Ron OHara
Modified: 2011-03-13 22:57 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ron OHara 2011-03-12 23:40:13 UTC
In a stable x86 system, after upgrading to udev-151-r4 (to try and resolve a usb printer problem), the device nodes of /dev/sda /dev/sda1 /dev/sda2 etc are not created. Originally the issue was missing /dev/md nodes, but we revised the system setup to no longer use raid since the udev component has moved completely away from the kernel boot from software raid. However, we current have to resort to an ugly workaround of a hard coded edit of the /etc/init.d/checkroot scipt where we manually create the essential device nodes of /dev/sda1 /dev/sda2 and so on.
A similar issue exists with the /dev/sr0 device not being created to allow access to the CD-ROM ...
After almost a year of tinkering and exploring combinations of udev and kernel options, I think I have a hint as to the real cause of the missing device nodes.
After perusing the dmesg output, I noticed that the kernel is finding the ATA disk device(s) and the CD-rom (lots of driver messages) BEFORE udev starts.
Interestingly, the 'sg' module for SCSII support which gets loaded after udev starts, seems to trigger (correctly) the creation of /dev/sg0 and /dev/sg1.
So it appears that udev (currently experimenting with udev-164-r1) does process it's events correctly, but is not running early enough to get the events about the boot disk and/or the CD-Rom device.

Does anyone have any suggestions for a long term solution that is better than editing the /etc/init.d/checkroot script to manually make the required device nodes for this specific system. Ideally some way to get udev to interrogate the kernel as it starts, to be told about devices that are already active, and where udev has missed a possible evet notification.



Reproducible: Always

Steps to Reproduce:
1. Boot system
2. look for device nodes
3. always missing
Comment 1 Rafał Mużyło 2011-03-13 00:16:45 UTC
At very least attach your kernel config and output of 'lspci -k'.

Most likely you need to update kernel config to the recent udev's requirements.
Perhaps glibc/kernel headers update is required too - hard to tell without 'emerge --info'.
Comment 2 Ron OHara 2011-03-13 22:42:20 UTC
It turns out that you must have BOTH the CONFIG_SYSFS_DEPRECATED and
CONFIG_SYSFS_DEPRECATED_V2 unset (IE. set to No)

I still have issues with getting the DVD drive visible to 'k3b' - but at least
/dev/sr0 now appears too..
Comment 3 Rafał Mużyło 2011-03-13 22:57:25 UTC
Ebuild does warn you about those options.