Fix febootstrap-supermin-helper for dual boot case (RHBZ#594021).
authorRichard Jones <rjones@redhat.com>
Fri, 21 May 2010 08:35:05 +0000 (09:35 +0100)
committerRichard Jones <rjones@redhat.com>
Fri, 21 May 2010 08:35:05 +0000 (09:35 +0100)
commit51f70a0bc0f57e72889208bd7f5ec8a7f229c541
treed4446862252b932541154594f5ab9ab3bfdaed9c
parent95dd28aadbfc1f058dae26beea949cf3cbc22b26
Fix febootstrap-supermin-helper for dual boot case (RHBZ#594021).

Jinxin Zheng found a case where libguestfs-supermin-helper
(now febootstrap-supermin-helper) would fail to locate a
suitable kernel on a dual boot RHEL 5 + 6 system.

The issue was that febootstrap-supermin-helper will first look
for kernels with an <arch> field in the name (as is the case
for RHEL 6 kernels).  If none of these are found, it would look
for kernels without an <arch> field (RHEL 5 kernels).  Then it
would look for corresponding module directories.

This fails if the dual boot system is booted into RHEL 5 because
the first step will find only RHEL 6 kernels, and then the third
step will fail to find any module directories (step two having
been skipped in this case).

This changes the code to look for module directories when
searching for kernels, and discard any kernels which don't
have module directories first.  Thus all RHEL 6 kernels will
be discarded, and we will proceed to step two and find some
RHEL 5 kernels.
febootstrap-supermin-helper.c