[Top] [All Lists]

Re: initramfs breakage with 64-bits kernels?

To: Geert Uytterhoeven <>
Subject: Re: initramfs breakage with 64-bits kernels?
From: "Kevin D. Kissell" <>
Date: Sun, 03 May 2009 11:24:37 +0200
Cc: Florian Fainelli <>,
In-reply-to: <>
Original-recipient: rfc822;
References: <> <>
User-agent: Thunderbird (Windows/20090302)
Geert Uytterhoeven wrote:
On Thu, Apr 30, 2009 at 21:41, Florian Fainelli <> wrote:
I have been trying to get a 2.6.29 64-bits kernel for Cavium Octeon to work
with a 32-bits userland in an initramfs. While booting, the kernel does not
find the initramfs due to the check against initrd_start in populate_rootfs
(init/initramfs.c) failing.
You mean the test for initrd_start being non-zero? Is your initramfs really at
address zero?
I'm not set up to verify this, but I have a nagging suspicion that a big-endian 64-bit kernel build could store an initrd_start address with 32 or fewer significant bits (i.e. it starts in the first 4GB) as a 64-bit pointer, but that the code in initramfs.c is testing the value as a 32-bit scalar type.  I don't know about lmo but in 2.6.29, it's declared in include/linux/initrd.h as an extern unsigned long, not a void *.  Little endian builds wouldn't see such a problem.


          Kevin K.
<Prev in Thread] Current Thread [Next in Thread>