Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 28909
b: refs/heads/master
c: e1b6aa6
h: refs/heads/master
i:
  28907: 433e990
v: v3
  • Loading branch information
Christoph Hellwig authored and Linus Torvalds committed Jun 23, 2006
1 parent ac0c6f6 commit ad3d762
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 17 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: a43a8c39bbb493c9e93f6764b350de2e33e18e92
refs/heads/master: e1b6aa6f1404f162697650df2cdb6c374b1d6a5b
30 changes: 14 additions & 16 deletions trunk/mm/slab.c
Original file line number Diff line number Diff line change
Expand Up @@ -1489,31 +1489,29 @@ __initcall(cpucache_init);
static void *kmem_getpages(struct kmem_cache *cachep, gfp_t flags, int nodeid)
{
struct page *page;
void *addr;
int nr_pages;
int i;

flags |= cachep->gfpflags;
#ifndef CONFIG_MMU
/* nommu uses slab's for process anonymous memory allocations, so
* requires __GFP_COMP to properly refcount higher order allocations"
/*
* Nommu uses slab's for process anonymous memory allocations, and thus
* requires __GFP_COMP to properly refcount higher order allocations
*/
page = alloc_pages_node(nodeid, (flags | __GFP_COMP), cachep->gfporder);
#else
page = alloc_pages_node(nodeid, flags, cachep->gfporder);
flags |= __GFP_COMP;
#endif
flags |= cachep->gfpflags;

page = alloc_pages_node(nodeid, flags, cachep->gfporder);
if (!page)
return NULL;
addr = page_address(page);

i = (1 << cachep->gfporder);
nr_pages = (1 << cachep->gfporder);
if (cachep->flags & SLAB_RECLAIM_ACCOUNT)
atomic_add(i, &slab_reclaim_pages);
add_page_state(nr_slab, i);
while (i--) {
__SetPageSlab(page);
page++;
}
return addr;
atomic_add(nr_pages, &slab_reclaim_pages);
add_page_state(nr_slab, nr_pages);
for (i = 0; i < nr_pages; i++)
__SetPageSlab(page + i);
return page_address(page);
}

/*
Expand Down

0 comments on commit ad3d762

Please sign in to comment.