Uevent bug in old kernel

Ah, I have found a bug running 4.3 with the old 2.6.21.7 kernel. I won't let it hold up the release of 4.3 though.

In /tmp/bootsysinit.log there are several lines like this:

grep: /sys/bus/usb/devices/usb5/uevent: Permission denied

This is due to how I read the modaliases in /etc/rc.d/rc.sysinit. The 2.6.30.5 kernel allows 'uevent' files to be read and the MODALIAS variable extracted from them. I don't know what kernel version that came in, but 2.6.21.7 doesn't support it.

With the 2.6.21.7 kernel there are actual 'modalias' file in /sys that have to be read.

rc.sysinit loads modules in two stages, and it is the second stage that is now failing. This means that some modules might not load. There are not too many cases that are caught by this secondary loading step, maybe some PCMCIA interfaces and some less-usual USB interfaces.

So it's not a critical thing, and I can easily provide a patched rc.sysinit soon to fix it. It needs a kernel-version test, with code to do it the "old way".

Probably those who want to run 4.3 with this old kernel will discover more things, and we can easily provide a "service pack" prior to 4.3.1.

But, I must emphasize that the bug will only affect a limited range of hardware. I rebooted my PC, with a savefile, it came up, everything still working, all modules loaded.


Posted on 17 Sep 2009, 16:49


Comments:

Posted on 17 Sep 2009, 17:26 by BarryK
2.6.25.16 okay
Right now I'm running 4.3 with 2.6.25.16 kernel, and it does support reading of 'uevent' files in /sys to extract the modalias.

Good, that means the bug only affects the old 2.6.21.7 kernel.



Posted on 17 Sep 2009, 19:09 by BarryK
Uevent readable
Ah, reading from:

http://www.kernel.org/doc/pending/hotplug.txt

Note that in kernel versions 2.6.24 and newer, "uevent" is readable. Reading from uevent provides the set of "extra" variables associated with this event.



Posted on 17 Sep 2009, 20:22 by Sage
"small"
What is "pup-430-small.iso" now going up on ibiblio?