Messages in this thread | | | Date | Sun, 7 Dec 2008 15:02:47 +0100 | From | "Kay Sievers" <> | Subject | Re: Runaway loop with the current git. |
| |
On Sun, Dec 7, 2008 at 12:23, Alan Cox <alan@lxorguk.ukuu.org.uk> wrote: >> This modprobe process does try to log an error, accesses /dev/console, >> which is not initialized in the kernel at that time, and the kernel >> module loader tries the load a module to support dev_t 5:1, which >> again runs modprobe, and ... > > So we have a buggy modprobe...
No, we have not. It is fine for modprobe doing that, as it is for any other binary too. It's also the usual glibc behavior for syslog(). Any userspace binary can access /dev/console any time. The kernel is not supposed to call modprobe to make /dev/console availabe.
>> Setting CONFIG_CRYPTO_MANAGER=y makes it disapper. The patch I sent >> seems to fix it. >> >> The bug is handled here: http://bugzilla.kernel.org/show_bug.cgi?id=12153 > > We cannot go re-ordering random chunks of kernel init with unpredictable > effects including possibly making other stuff less reliable (because you > set up the console device before the console driver is loaded on a PCI > bus device).
We are not reordering, we provide a registered /dev/console driver core device, not touching any driver, just to prevent the kernel module loader from going crazy.
> And we certainly can't do it this close to a release.
We can do the real fix any time it is the proper time. It is still an obvious kernel bug which needs to be fixed, and not some obscure userspace rule, we suddenly need to establish to work around some dumb module loader/console logic.
Thanks, Kay
| |