I have a second machine which I use as a web/email server... let's call it "webserver". (Let's call my first machine "desktop".)

Today I upgraded "webserver" from Lenny to Squeeze, and then to Sid. This machine was running a custom 2.3.37 kernel throughout the upgrade process. Once the upgrade to Sid was successful, I installed Debian kernel 3.2.0-2 and tried to boot to it. That worked, but I had held back kmod and was using the module-init-tools from Squeeze (3.12-2).

With 3.2.0-2 running, I installed kmod/libmkmod 6-1.1, forced a rebuild of the initrd (update-initramfs -k all -u), and tried a reboot to 3.2.0-2 again. It worked.

I was not paying careful attention to the sequence of steps, there, and I got a little overexcited thinking that kmod-6-1.1 resolved this bug.

While in euphoria, I moved my attention from "webserver" back to "desktop". On that machine, kmod-5-2 builds working initrd's for Debian kernels (while running my custom 3.2.9 kernel) while kmod-6-1 does not. I found that rebooting to a Debian kernel (either 3.2.0-2 or 3.3-rc6) and updating the initrd's with kmod-6-1.1 gave me working Debian kernels. (My custom kernel is unaffected; it does not use an initrd.)

However, rebooting back to my custom kernel (on "desktop") and updating the initrd's for the Debian kernels with kmod-6-1.1 installed caused the Debian kernels to fail again. Downgrading to kmod-5-2, and rebuilding the Debian initrd's with my custom kernel running, worked fine.

For the sake of completion, I carried out the same testing on "webserver": I booted the custom 2.3.37 kernel, updated the initrd for Debian kernel 3.2.0-2 with kmod-6-1.1, and the Debian kernel would not boot. Downgrading to module-init-tools-3.12-2, and updating the initrd while running the custom kernel, produced a working initrd for the Debian kernel.

In summary:

1) if I only use kmod-6* to update initrd's while running a Debian kernel, then the result is working initrd's for those Debian kernels.

2) if I use a custom kernel which does not need an initrd with kmod-6*, then updating initrd's for Debian kernels produces bad initrd's.

3) if I use a custom kernel with kmod-5-2 (or module-init-tools-3*) then good initrd's are produced for the (non-running) Debian kernels.

Something changed in kmod-6.0 so that the modules selected for initrd's of non-running kernels are determined by the modules being used by the running kernel. If the currently-running kernel does not need modules that the non-running kernels _will_ need, then their initrd's are built without including those essential modules.

Bummer.

HTH,
Dave W.



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to