site  contact  subhomenews

Uevent bug in old kernel

September 17, 2009 — BarryK
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.

Comments

2.6.25.16 okay
Username: BarryK
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.

Uevent readable
Username: BarryK
"Ah, reading from: http://www.kernel.org/doc/pending/hotplug.txt [i]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.[/i]


Tags: woof