aboutsummaryrefslogtreecommitdiffstats
path: root/mm
diff options
context:
space:
mode:
authorAndi Kleen <ak@suse.de>2008-07-24 00:27:46 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-07-24 13:47:17 -0400
commit01ad1c0827db5b3695c53e296dbb2c1da16a0911 (patch)
tree80c46c00832094f2413ad97b8e1953018a71cc68 /mm
parentb54bbf7b81170f03597c17dd0b559e3006bc9868 (diff)
mm: export prep_compound_page to mm
hugetlb will need to get compound pages from bootmem to handle the case of them being greater than or equal to MAX_ORDER. Export the constructor function needed for this. Acked-by: Adam Litke <agl@us.ibm.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Nick Piggin <npiggin@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm')
-rw-r--r--mm/internal.h2
-rw-r--r--mm/page_alloc.c2
2 files changed, 3 insertions, 1 deletions
diff --git a/mm/internal.h b/mm/internal.h
index 858ad01864dc..1f43f7416972 100644
--- a/mm/internal.h
+++ b/mm/internal.h
@@ -16,6 +16,8 @@
16void free_pgtables(struct mmu_gather *tlb, struct vm_area_struct *start_vma, 16void free_pgtables(struct mmu_gather *tlb, struct vm_area_struct *start_vma,
17 unsigned long floor, unsigned long ceiling); 17 unsigned long floor, unsigned long ceiling);
18 18
19extern void prep_compound_page(struct page *page, unsigned long order);
20
19static inline void set_page_count(struct page *page, int v) 21static inline void set_page_count(struct page *page, int v)
20{ 22{
21 atomic_set(&page->_count, v); 23 atomic_set(&page->_count, v);
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index e43aae135b38..eaa86671ebbd 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -264,7 +264,7 @@ static void free_compound_page(struct page *page)
264 __free_pages_ok(page, compound_order(page)); 264 __free_pages_ok(page, compound_order(page));
265} 265}
266 266
267static void prep_compound_page(struct page *page, unsigned long order) 267void prep_compound_page(struct page *page, unsigned long order)
268{ 268{
269 int i; 269 int i;
270 int nr_pages = 1 << order; 270 int nr_pages = 1 << order;