summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAndrew Morton <akpm@osdl.org>2004-04-12 19:23:02 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-04-12 19:23:02 -0700
commit467769abc79de002e75cdfb0d8f43695dfb4ffab (patch)
treebe7335fadf26a84c6776d10d63329a59bc7db7d5 /include
parent03e95cafe7417e31fa78e827d714e1c077ab089e (diff)
[PATCH] uninline put_page()
Shrinks my vmlinux by an astonishing 28k. text data bss dec hex filename 3038796 589890 150612 3779298 39aae2 vmlinux.before 3009761 590107 150612 3750480 393a50 vmlinux.after Thanks to Denis Vlasenko <vda@port.imtp.ilyichevsk.odessa.ua> for performing the analysis.
Diffstat (limited to 'include')
-rw-r--r--include/linux/mm.h17
1 files changed, 1 insertions, 16 deletions
diff --git a/include/linux/mm.h b/include/linux/mm.h
index d453a0ab62a7..14dba1b26016 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -255,22 +255,7 @@ static inline void get_page(struct page *page)
atomic_inc(&page->count);
}
-static inline void put_page(struct page *page)
-{
- if (unlikely(PageCompound(page))) {
- page = (struct page *)page->private;
- if (put_page_testzero(page)) {
- if (page[1].mapping) { /* destructor? */
- (*(void (*)(struct page *))page[1].mapping)(page);
- } else {
- __page_cache_release(page);
- }
- }
- return;
- }
- if (!PageReserved(page) && put_page_testzero(page))
- __page_cache_release(page);
-}
+void put_page(struct page *page);
#else /* CONFIG_HUGETLB_PAGE */