lkml.org 
[lkml]   [2007]   [Sep]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: Regression in 2.6.23-pre Was: Problems with 2.6.23-rc6 on AMD Geode LX800
    Jordan Crouse wrote:
    >
    > Its the latter - max_pfn as read by find_max_pfn() in arch/i386/e820.c
    > is being set to 9F (640k) in the broken case, this due to the
    > the e820 map looking something like this:
    >
    > Address Size Type
    > 00000000 0009FC00 1
    > 0009FC00 00000400 2
    > 000E0000 00002000 2
    >
    > (Yep, thats it - thats the list. e820.nr_map is indeed 3).
    >
    > Long story short, bdata->node_low_pfn gets set to 9F, and When we
    > try to allocate the bootmem bitmap (at _pa_symbol(_text), which is
    > page 0x100), then the system gets appropriately angry.
    >
    > As background, I'm using syslinux 3.36 as my loader here - I've used this
    > exact same version for a very long time, so I don't blame it in the least.
    > Something is getting confused in the early kernel, and whatever that
    > something is, a still unknown change in a newer version of the BIOS
    > fixed it. The search goes on.
    >

    Please try the following debug patch to let us know what is going on.

    -hpa
    diff --git a/arch/i386/boot/memory.c b/arch/i386/boot/memory.c
    index 1a2e62d..a0ccf29 100644
    --- a/arch/i386/boot/memory.c
    +++ b/arch/i386/boot/memory.c
    @@ -33,6 +33,12 @@ static int detect_memory_e820(void)
    "=m" (*desc)
    : "D" (desc), "a" (0xe820));

    + printf("e820: err %d id 0x%08x next %u %08x:%08x %u\n",
    + err, id, next,
    + (unsigned int)desc->addr,
    + (unsigned int)desc->size,
    + desc->type);
    +
    if (err || id != SMAP)
    break;
    \
     
     \ /
      Last update: 2007-09-26 21:17    [W:0.021 / U:2.204 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site