Bug#636123: linux-image-2.6.39 not booting due to older package (not in list of dependencies!)
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=636123
there's a rather complex set of interdependencies between
linux-image-2.6.39, libdevmapper, initramfs-tools and LVM that has
resulted in a system which last had 2.6.32-trunk-amd64 installed (and
associated packages) failing to boot when the latest 2.6.39 kernel was
installed. the root filesystem is on an LVM partition.
the error that occurred will be familiar to anyone who has done kernel
development especially embedded linux development: unable to find root
filesystem, after only about 5-10 lines of kernel messages. it's
incredibly early on in the boot process, and is probably in the
initial ramdisk stuff, when looking for (duh) the root filesystem.
the *only* thing that was installed, which resulted in the boot
failure, was the linux 2.6.39 kernel. this, obviously, triggered an
initrd build (but not of the 2.6.32 one, i don't recall seeing that:
could be wrong though).
now, i've discussed this on the bugtracker and there clearly isn't -
and really shouldn't be - a listed debian dependency between
linux-image-2.6.39 kernel and a userspace library. however, there
clearly *is* a dependency because "It Don't Wurk (tm)".
so the issue is: how the bloody hell should this clear dependency be
expressed in "Debian Dependency" terms, such that nobody else runs
smack into this same issue?
ben's suggested that there may be something in initramfs-tools that's
up the creek. however, i'm having difficulty finding a link (depends,
rdepends) between libdevmapper and initramfs-tools (which may in fact
be the issue).
are there any other ideas on how this may be resolved?
l.
p.s. here is a list of reverse-dependencies of libdevmapper, and
dependencies of initramfs-tools (and a few more). not going
significantly into any depth here [wookey, where's that visualisation
graph system you were working on! :) ] it's hard to find a link
between initramfs-tools which *explicitly* mentions "LVM2" and any
lvm2 packages in any initramfs-tools dependencies. beh?
lkcl@teenymac:~$ apt-cache rdepends libdevmapper1.02.1
libdevmapper1.02.1
Reverse Depends:
initscripts
udisks
parted
libparted1.8-12
libparted0debian1
udisks
initscripts
parted
libparted0debian1
multipath-tools
kpartx
lvm2
liblvm2cmd2.02
liblvm2app2.2
libdevmapper-dev
dmsetup
clvm
lilo
python-libvirt
libvirt0
libvirt-bin
grub-pc-bin
grub-emu
grub-common
eject
libdmraid1.0.0.rc16
libcryptsetup1
cryptmount
initscripts
libparted1.8-10
multipath-tools
kpartx
lvm2
clvm
lilo
eject
dmraid
libdevmapper-dev
dmsetup
cryptsetup
cryptmount
Package: initramfs-tools
Version: 0.99
Depends: klibc-utils (>= 1.5.9-1), cpio, module-init-tools, udev (>=
0.086-1), findutils (>= 4.2.24)
Recommends: busybox (>= 1:1.01-3) | busybox-initramfs
Package: udev
Version: 0.125-7+lenny3
Depends: libc6 (>= 2.7-1), libselinux1 (>= 2.0.59), libvolume-id0 (>=
0.113-1~), lsb-base (>= 3.0-6)
Pre-Depends: debconf (>= 1.4.69) | debconf-2.0
Conflicts: hal (<< 0.5.6-2), hotplug, initramfs-tools (<< 0.39),
initscripts (<< 2.85-16), klibc-utils (<= 1.4.19-1), lvm-common (<<
1.5.13), makedev (<< 2.3.1-80), module-init-tools (<< 3.2.2-1),
multipath-tools (<< 0.4.7-2)
Reply to: