Re: sparsemem panic in 2.6.17-rc5-mm1 and -mm2

Rusty Russell
2006-06-07T05:36:32Z

On Tue, 2006-06-06 at 21:58 -0700, Andrew Morton wrote:
> On Wed, 7 Jun 2006 09:43:55 +0900
> KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> wrote:
>
> > On Tue, 6 Jun 2006 00:27:58 -0700
> > Andrew Morton <akpm@osdl.org> wrote:
> >
> > >
> > > I tried sparsemem on my little x86 box here. Boots OK, after fixing up the
> > > kswapd_init() patch (below).
> > >
> > > I'm wondering why I have 4k of highmem:
> > >
> >
> > Could you show /proc/iomem of your 4k HIGHMEM box ?
> > Does 4k HIGHMEM exist only when SPARSEMEM is selected ?
>
> Turns out that my 4 kbyte highmem zone (at least, as reported in
> /proc/meminfo) is due to
>
> vdso-randomize-the-i386-vdso-by-moving-it-into-a-vma.patch

Thanks for this report, Andrew!

Yes, MAXMEM is reduced by one page in the patch, taking into account
that kernel memory tops out at __FIXADDR_TOP, not 0xFFFFFFFF. AFAICT
this is in fact a bugfix, which becomes more important when
__FIXADDR_TOP can be moved to create a larger memory hole (as for
hypervisors).

You now have 1 page more memory available in your system. Use it
wisely.

I'm sure Gerd will slap me if I'm wrong on this. Here's the patch
fragment:

-#define MAXMEM (-__PAGE_OFFSET-__VMALLOC_RESERVE)
+#define MAXMEM (__FIXADDR_TOP-__PAGE_OFFSET-__VMALLOC_RESERVE)

Cheers,
Rusty.
--
ccontrol: http://ccontrol.ozlabs.org