Commit 01ff53f4 authored by Mike Frysinger's avatar Mike Frysinger Committed by Linus Torvalds
Browse files

rmap: fixup page_referenced() for nommu systems



After the recent changes that went into mm/vmscan.c to overhaul stuff, we
ended up with these warnings on no-mmu systems:

  mm/vmscan.c: In function `shrink_page_list':
  mm/vmscan.c:580: warning: unused variable `vm_flags'
  mm/vmscan.c: In function `shrink_active_list':
  mm/vmscan.c:1294: warning: `vm_flags' may be used uninitialized in this function
  mm/vmscan.c:1242: note: `vm_flags' was declared here

This is because the no-mmu function defines page_referenced() to work on
the first argument only (the page).  It does not clear the vm_flags given
to it because for no-mmu systems, they never actually get utilized.  Since
that is no longer strictly true, we need to set vm_flags to 0 like
everyone else so gcc can do proper dead code elimination without annoying
us with unused warnings.
Signed-off-by: default avatarMike Frysinger <vapier@gentoo.org>
Cc: David Howells <dhowells@redhat.com>
Acked-by: default avatarDavid McCullough <davidm@snapgear.com>
Cc: Greg Ungerer <gerg@uclinux.org>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent a5c9b696
...@@ -118,7 +118,14 @@ int try_to_munlock(struct page *); ...@@ -118,7 +118,14 @@ int try_to_munlock(struct page *);
#define anon_vma_prepare(vma) (0) #define anon_vma_prepare(vma) (0)
#define anon_vma_link(vma) do {} while (0) #define anon_vma_link(vma) do {} while (0)
#define page_referenced(page, locked, cnt, flags) TestClearPageReferenced(page) static inline int page_referenced(struct page *page, int is_locked,
struct mem_cgroup *cnt,
unsigned long *vm_flags)
{
*vm_flags = 0;
return TestClearPageReferenced(page);
}
#define try_to_unmap(page, refs) SWAP_FAIL #define try_to_unmap(page, refs) SWAP_FAIL
static inline int page_mkclean(struct page *page) static inline int page_mkclean(struct page *page)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment