lkml.org 
[lkml]   [2008]   [May]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] sparsemem vmemmap: initialize memmap.
> > Index: linux-2.6/mm/sparse-vmemmap.c
> > ===================================================================
> > --- linux-2.6.orig/mm/sparse-vmemmap.c
> > +++ linux-2.6/mm/sparse-vmemmap.c
> > @@ -154,6 +154,6 @@ struct page * __meminit sparse_mem_map_p
> > int error = vmemmap_populate(map, PAGES_PER_SECTION, nid);
> > if (error)
> > return NULL;
> > -
> > + memset(map, 0, PAGES_PER_SECTION * sizeof(struct page));
> > return map;
> > }
>
> The normal expectation is that all allocations are made using
> vmemmap_alloc_block() which allocates from the appropriate place. Once
> the buddy is up and available it uses:
>
> struct page *page = alloc_pages_node(node,
> GFP_KERNEL | __GFP_ZERO, get_order(size));
>
> to get the memory so it should all be zero'd. So I would expect all
> existing users to be covered by that? Can you not simply use __GFP_ZERO
> for your allocations or use vmemmap_alloc_block() ?

Ah, I didn't notice the __GFP_ZERO. So it's just an s390 bug. Will
move the memset to our code instead.
Thanks!


\
 
 \ /
  Last update: 2008-05-09 13:37    [W:0.077 / U:0.260 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site