mm: make gather_stats() type-safe and remove forward declaration
Improve the prototype of gather_stats() to take a struct numa_maps as argument instead of a generic void *. Update all callers to make the required type explicit. Since gather_stats() is not needed before its definition and is scheduled to be moved out of mempolicy.c the declaration is removed as well. Signed-off-by: Stephen Wilson <wilsons@start.ca> Reviewed-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Cc: Hugh Dickins <hughd@google.com> Cc: David Rientjes <rientjes@google.com> Cc: Lee Schermerhorn <lee.schermerhorn@hp.com> Cc: Alexey Dobriyan <adobriyan@gmail.com> Cc: Christoph Lameter <cl@linux-foundation.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
b1f72d1857
commit
722e2ee09b
@@ -456,7 +456,6 @@ static const struct mempolicy_operations mpol_ops[MPOL_MAX] = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static void gather_stats(struct page *, void *, int pte_dirty);
|
|
||||||
static void migrate_page_add(struct page *page, struct list_head *pagelist,
|
static void migrate_page_add(struct page *page, struct list_head *pagelist,
|
||||||
unsigned long flags);
|
unsigned long flags);
|
||||||
|
|
||||||
@@ -2539,9 +2538,8 @@ struct numa_maps {
|
|||||||
unsigned long node[MAX_NUMNODES];
|
unsigned long node[MAX_NUMNODES];
|
||||||
};
|
};
|
||||||
|
|
||||||
static void gather_stats(struct page *page, void *private, int pte_dirty)
|
static void gather_stats(struct page *page, struct numa_maps *md, int pte_dirty)
|
||||||
{
|
{
|
||||||
struct numa_maps *md = private;
|
|
||||||
int count = page_mapcount(page);
|
int count = page_mapcount(page);
|
||||||
|
|
||||||
md->pages++;
|
md->pages++;
|
||||||
@@ -2634,6 +2632,7 @@ static void check_huge_range(struct vm_area_struct *vma,
|
|||||||
static int gather_hugetbl_stats(pte_t *pte, unsigned long hmask,
|
static int gather_hugetbl_stats(pte_t *pte, unsigned long hmask,
|
||||||
unsigned long addr, unsigned long end, struct mm_walk *walk)
|
unsigned long addr, unsigned long end, struct mm_walk *walk)
|
||||||
{
|
{
|
||||||
|
struct numa_maps *md;
|
||||||
struct page *page;
|
struct page *page;
|
||||||
|
|
||||||
if (pte_none(*pte))
|
if (pte_none(*pte))
|
||||||
@@ -2643,7 +2642,8 @@ static int gather_hugetbl_stats(pte_t *pte, unsigned long hmask,
|
|||||||
if (!page)
|
if (!page)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
gather_stats(page, walk->private, pte_dirty(*pte));
|
md = walk->private;
|
||||||
|
gather_stats(page, md, pte_dirty(*pte));
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user