[lkml]   [2006]   [Jul]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [Fastboot] [CFT] ELF Relocatable x86 and x86_64 bzImages
    Vivek Goyal <> writes:

    > On Mon, Jul 31, 2006 at 04:25:20PM -0400, Vivek Goyal wrote:
    >> On Mon, Jul 31, 2006 at 10:19:04AM -0600, Eric W. Biederman wrote:
    >> >
    >> > I have spent some time and have gotten my relocatable kernel patches
    >> > working against the latest kernels. I intend to push this upstream
    >> > shortly.
    >> >
    >> > Could all of the people who care take a look and test this out
    >> > to make certain that it doesn't just work on my test box?
    >> >
    >> Hi Eric,
    >> Currently I am testing your patches on i386. With CONFIG_RELOCATABLE=y
    >> kernel boots fine and kexec also works.
    >> But my kernel hangs on kexec on panic case. It hangs early in
    >> decompress_kernel(). Kernel hangs at following condition.
    >> + if (((u32)output - CONFIG_PHYSICAL_START) & 0x3fffff)
    >> + error("Destination address not 4M aligned");

    As for the missing print. Did you have an appropriate earlyprintk?

    > Ok. I am decompressing the kernel to 16MB and after reducing 1MB of
    > CONFIG_PHYSICAL_START I am left with 15MB which is not 4M aligned
    > hence I seems to be running into it.
    > I changed it to
    > if ((u32)output) & 0x3fffff)
    > and kdump kernel booted fine. But this will run into issues if I load
    > kernel at 1MB.
    > I got a dump question. Why do I have to load the kernel at 4MB alignment?
    > Existing kernel boots loads at 1MB, which is non 4MB aligned and it works
    > fine?

    4MB is a little harsh, but I haven't worked through what the exact rules
    are, I know 4MB is the worst case alignment for arch/i386.

    The rule is that we have to be at the same offset from 4MB as we
    were built to run at. So in this case address where (address %4MB) == 1MB.

    We might be able to get away with 2MB alignment. I thought kexec-tools
    did that calculation automatically for an ET_DYN image but it has been
    a while since I looked.

    My goal with the check was to catch problems early before something
    bad happened.


    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2006-08-01 04:35    [W:0.022 / U:2.268 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site