Messages in this thread Patch in this message | | | Date | Wed, 14 Apr 2010 09:22:09 +0900 | From | KAMEZAWA Hiroyuki <> | Subject | Re: [PATCH 5/6] change alloc function in __vmalloc_area_node |
| |
On Wed, 14 Apr 2010 00:25:02 +0900 Minchan Kim <minchan.kim@gmail.com> wrote:
> __vmalloc_area_node never pass -1 to alloc_pages_node. > It means node's validity check is unnecessary. > So we can use alloc_pages_exact_node instead of alloc_pages_node. > It could avoid comparison and branch as 6484eb3e2a81807722 tried. > > Cc: Nick Piggin <npiggin@suse.de> > Signed-off-by: Minchan Kim <minchan.kim@gmail.com>
Reviewed-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
But, in another thinking,
- if (node < 0) - page = alloc_page(gfp_mask);
may be better ;)
Thanks, -Kame
> --- > mm/vmalloc.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/mm/vmalloc.c b/mm/vmalloc.c > index ae00746..7abf423 100644 > --- a/mm/vmalloc.c > +++ b/mm/vmalloc.c > @@ -1499,7 +1499,7 @@ static void *__vmalloc_area_node(struct vm_struct *area, gfp_t gfp_mask, > if (node < 0) > page = alloc_page(gfp_mask); > else > - page = alloc_pages_node(node, gfp_mask, 0); > + page = alloc_pages_exact_node(node, gfp_mask, 0); > > if (unlikely(!page)) { > /* Successfully allocated i pages, free them in __vunmap() */ > -- > 1.7.0.5 > >
| |