Bug 441846

Summary: Unable to determine kernel type/version
Product: [Fedora] Fedora Reporter: Doug Chapman <dchapman>
Component: anacondaAssignee: Anaconda Maintenance Team <anaconda-maint-list>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: high    
Version: 9   
Target Milestone: ---   
Target Release: ---   
Hardware: ia64   
OS: Linux   
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-06-21 20:21:17 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 163350    
Description Flags
full log file from failed install none

Description Doug Chapman 2008-04-10 14:57:47 UTC
Description of problem:
I think this may be the same as I reported last week which was thought to be
fixed (I can't find that BZ number at the moment).  We have had other
pungi/install issues so I have not had a chance to verify until now.

After anaconda installs packages on ia64 it fails to set up the bootloader.  The
message on the screen is something about "unable to find a kernel" (sorry,
forgot to get the exact message).

Digging through the logs I find this:

14:42:28 INFO    : moving (1) to step firstboot
14:42:28 INFO    : moving (1) to step instbootloader
14:42:28 WARNING : Unable to determine kernel type/version for

I will attach the full anaconda.log

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
Actual results:

Expected results:

Additional info:

Comment 1 Doug Chapman 2008-04-10 14:57:47 UTC
Created attachment 302002 [details]
full log file from failed install

Comment 2 Doug Chapman 2008-04-10 15:05:56 UTC
Looks like the bug is here:

in packages.py:

    def get_version(header):
        for f in header['filenames']:
            if f.startswith('/boot/vmlinuz-'):
                return f[14:]
            elif f.startswith('/boot/efi/vmlinuz-'):
                return f[18:]
        return ""

the path to the ia64 kernel is /boot/efi/EFI/redhat which is not accounted for

BTW, the '/boot/efi/vmlinuz' path technically does not adhear to the EFI spec of
having the kernel in a os vendor specific directory.  Just mentioning that in
case that is where x86_64 efi systems put their kernel.  I don't know of any
technical reason why that would not work however, just an FYI.

Comment 3 Jeremy Katz 2008-04-10 18:09:35 UTC

Comment 4 Doug Chapman 2008-04-10 20:03:53 UTC

I just took a quick glance at the patch you checked into git:

+            elif f.startswith('/boot/efi/EFI/redhat/vmlinuz-'):
+                return f[21:]

if the kernel is something like:

f[21:] would return vmlinuz-2.6.25-0.201.rc8.git4.fc9.ia64

shouldn't this be:

+            elif f.startswith('/boot/efi/EFI/redhat/vmlinuz-'):
+                return f[29:]

which would return just the version as expected.


I built a tree using my own hacked up anaconda with the latter and it does
indeed work.  I was going to post the patch after I tested but you had it fixed
before I finished testing.

- Doug

Comment 5 Bug Zapper 2008-05-14 09:14:56 UTC
Changing version to '9' as part of upcoming Fedora 9 GA.
More information and reason for this action is here:

Comment 6 Chris Lumens 2008-06-21 20:21:17 UTC
Doug - thanks, we have your updated patch in the anaconda source tree.