lkml.org 
[lkml]   [2008]   [Jun]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] x86 boot: Pass E820 memory map entries more than 128 via linked list of setup data

* Huang, Ying <ying.huang@intel.com> wrote:

> Because of the size limits of struct boot_params (zero page), the
> maximum number of E820 memory map entries can be passed to kernel is
> 128. As pointed by Paul Jackson, there is some machine produced by SGI
> with so many nodes that the number of E820 memory map entries is more
> than 128. To enabling Linux kernel on these system, a new setup data
> type named SETUP_E820_EXT is defined to pass additional memory map
> entries to Linux kernel.
>
> This patch is based on x86/auto-latest branch of git-x86 tree and has
> been tested on x86_64 and i386 platform.

applied to tip/x86/mpparse, thanks.

this bit collided with a recent change:

> - do {
> - u64 start = biosmap->addr;
> - u64 size = biosmap->size;
> - u64 end = start + size;
> - u32 type = biosmap->type;
> -
> - /* Overflow in 64 bits? Ignore the memory map. */
> - if (start > end)
> - return -1;
> -
> - add_memory_region(start, size, type);
> - } while (biosmap++, --nr_map);
> - return 0;
> + return __copy_e820_map(biosmap, nr_map);

because add_memory_region() got renamed to e820_add_region(). I did the
obvious fixup.

Ingo


\
 
 \ /
  Last update: 2008-06-18 13:47    [W:0.111 / U:0.464 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site