diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-06-10 08:00:47 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-06-10 08:00:47 -0700 |
commit | 9557c3cfdaa792c7db04b86f47b5dd1e6dc5ec4f (patch) | |
tree | 7e3ec6a4ae1417c417156978f3bb792842ef04f0 /mm/swap_state.c | |
parent | 147d9e7bcad3b8d5465f6eea6292731e7f35dee8 (diff) | |
parent | 18aba41cbfbcd138e9f6d8d446427d8b7691c194 (diff) |
Merge branch 'akpm' (patches from Andrew)
Merge misc fixes from Andrew Morton:
"7 fixes"
* emailed patches from Andrew Morton <akpm@linux-foundation.org>:
mm/fadvise.c: do not discard partial pages with POSIX_FADV_DONTNEED
mm: introduce dedicated WQ_MEM_RECLAIM workqueue to do lru_add_drain_all
kernel/relay.c: fix potential memory leak
mm: thp: broken page count after commit aa88b68c3b1d
revert "mm: memcontrol: fix possible css ref leak on oom"
kasan: change memory hot-add error messages to info messages
mm/hugetlb: fix huge page reserve accounting for private mappings
Diffstat (limited to 'mm/swap_state.c')
-rw-r--r-- | mm/swap_state.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/mm/swap_state.c b/mm/swap_state.c index 0d457e7db8d6..c99463ac02fb 100644 --- a/mm/swap_state.c +++ b/mm/swap_state.c @@ -252,7 +252,10 @@ static inline void free_swap_cache(struct page *page) void free_page_and_swap_cache(struct page *page) { free_swap_cache(page); - put_page(page); + if (is_huge_zero_page(page)) + put_huge_zero_page(); + else + put_page(page); } /* |