On Wed, 2008-06-04 at 21:51 +0200, Andrea Arcangeli wrote:
> > Dave mentioned that SetPageReserved() doesn't necessarily get called
> for 
> > zones with bad alignment.
> 
> What does 'bad alignment' mean? Buddy was used to require each zone to
> start at 1<<MAX_ORDER naturally aligned physical address (any ram
> before the alignment was wasted). In any case all 'struct page' where
> pfn_valid would return true, should start with PG_reserved set, if
> it's not the case it should be fixed I guess.

I was thinking of the case where you have a large sparsemem section
size, and a zone which is smaller.

Say you have a 1GB SECTION_SIZE and a single 512MB zone.  You'll get a
true pfn_valid() for the 512MB that isn't in the zone since the
mem_map[] is actually larger than the zone.  But, since
memmap_init_zone() is the one responsible for setting PageReserved(), I
don't think anybody will set PageReserved() on that top 512MB.

-- Dave

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to