[lkml]   [2003]   [Mar]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: hm, page 000f0000 reserved twice ?
On 08 Mar 2003 18:46:22 +0000
Alan Cox <> wrote:

> On Sat, 2003-03-08 at 17:18, Stephan von Krawczynski wrote:
> > Hello all,
> >
> > Can any kind soul please tell me what "hm, page xxxx reserved twice" means?
> > And additionally: is there any magic involved in getting a serial console
> > working? There seems no way to make it work on below system. All "echo
> > >/dev/ttyS0 test"
> > do work, but no console output whatsoever visible...
> The page reserved twice is just a warning, in this case its harmless and
> really its code that wants tidying up

Hm, from looking at the code (mm/bootmem.c), I would say, that:

static void __init reserve_bootmem_core(bootmem_data_t *bdata, unsigned long
addr, unsigned long size)
unsigned long i;
* round up, partially reserved pages are considered
* fully reserved.
unsigned long sidx = (addr - bdata->node_boot_start)/PAGE_SIZE;
unsigned long eidx = (addr + size - bdata->node_boot_start +
unsigned long end = (addr + size + PAGE_SIZE-1)/PAGE_SIZE;

if (!size) BUG();

if (sidx < 0)

Can sidx < 0 happen? sidx is unsigned long... Shouldn't "(addr <
bdata->node_boot_start)" be checked instead which would implicitely check eidx,
too. Or not?

if (eidx < 0)

s.a. ...

if (sidx >= eidx)
if ((addr >> PAGE_SHIFT) >= bdata->node_low_pfn)
if (end > bdata->node_low_pfn)
for (i = sidx; i < eidx; i++)
if (test_and_set_bit(i, bdata->node_bootmem_map))
printk("hm, page %08lx reserved twice.\n",

Just as a note ... not really important, though.


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: 2005-03-22 13:33    [W:1.197 / U:0.012 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site