Bug#641193: /usr/lib/grub/grub-mkconfig_lib: considers 2.6.32-bpo.5 newer than 2.6.32-5; affects grub menu order and default kernel

Boris Dušek dusek at brailcom.org
Sun Sep 11 11:08:08 UTC 2011


Package: grub-common
Version: 1.98+20100804-14
Severity: normal
File: /usr/lib/grub/grub-mkconfig_lib

I used lenny with kernel from squeeze through backports. Then I upgraded to
squeeze. It was strange to me that after reboot, the machine still booted
the kernel from backports and not the one from squeeze.

The versions of linux-image packages:

$ dpkg -l | grep linux-image | grep 2.6.32 | awk 
ii  linux-image-2.6-amd64                     2.6.32+29
ii  linux-image-2.6.32-5-amd64                2.6.32-35squeeze1
ii  linux-image-2.6.32-bpo.5-amd64            2.6.32-31~bpo50+1

I traced it to line 185 in grub-mkconfig_lib file, where /boot/vmlinux-*
filenames are compared using dpkg --compare-versions. If however the regular
expression on line 173 of the same file gets "bpo" alongside "pre", "rc", "git"
etc., it seems to resolve the issue (but I did not test it extensively to
make sure it does not introduce new issues, nor have I any intimate knowledge
of the "bpo" package naming scheme).

>From brief inspection of the grub-mkconfig_lib file, it seems that the same
buggy logic is present in the unstable version of the package as well
(the line numbers there are 218 and 206).

So this is probably a bug in the debian/patches/dpkg_version_comparison.patch
source package file.

-- System Information:
Debian Release: 6.0.2
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-bpo.5-amd64 (SMP w/4 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=UTF-8) (ignored: LC_ALL set to en_US.UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages grub-common depends on:
ii  base-files            6.0squeeze2        Debian base system miscellaneous f
ii  dpkg                  1.15.8.11          Debian package management system
ii  gettext-base          0.18.1.1-3         GNU Internationalization utilities
ii  install-info          4.13a.dfsg.1-6     Manage installed documentation in 
ii  libc6                 2.11.2-10          Embedded GNU C Library: Shared lib
ii  libdevmapper1.02.1    2:1.02.48-5        The Linux Kernel Device Mapper use
ii  libfreetype6          2.4.2-2.1+squeeze1 FreeType 2 font engine, shared lib
ii  zlib1g                1:1.2.3.4.dfsg-3   compression library - runtime

Versions of packages grub-common recommends:
ii  os-prober                     1.42       utility to detect other OSes on a 

Versions of packages grub-common suggests:
pn  grub-emu                      <none>     (no description available)
pn  multiboot-doc                 <none>     (no description available)
pn  xorriso                       <none>     (no description available)

-- no debconf information





More information about the Pkg-grub-devel mailing list