summaryrefslogtreecommitdiffstats
path: root/mm
diff options
context:
space:
mode:
Diffstat (limited to 'mm')
-rw-r--r--mm/internal.h19
-rw-r--r--mm/page_alloc.c17
2 files changed, 17 insertions, 19 deletions
diff --git a/mm/internal.h b/mm/internal.h
index 6bf134e8fb3d..85004f540e34 100644
--- a/mm/internal.h
+++ b/mm/internal.h
@@ -9,5 +9,20 @@
* 2 of the License, or (at your option) any later version.
*/
-/* page_alloc.c */
-extern void set_page_refs(struct page *page, int order);
+static inline void set_page_refs(struct page *page, int order)
+{
+#ifdef CONFIG_MMU
+ set_page_count(page, 1);
+#else
+ int i;
+
+ /*
+ * We need to reference all the pages for this order, otherwise if
+ * anyone accesses one of the pages with (get/put) it will be freed.
+ * - eg: access_process_vm()
+ */
+ for (i = 0; i < (1 << order); i++)
+ set_page_count(page + i, 1);
+#endif /* CONFIG_MMU */
+}
+
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 680cbe5b6ba2..6d513faf050b 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -453,23 +453,6 @@ expand(struct zone *zone, struct page *page,
return page;
}
-void set_page_refs(struct page *page, int order)
-{
-#ifdef CONFIG_MMU
- set_page_count(page, 1);
-#else
- int i;
-
- /*
- * We need to reference all the pages for this order, otherwise if
- * anyone accesses one of the pages with (get/put) it will be freed.
- * - eg: access_process_vm()
- */
- for (i = 0; i < (1 << order); i++)
- set_page_count(page + i, 1);
-#endif /* CONFIG_MMU */
-}
-
/*
* This page is about to be returned from the page allocator
*/