Without CONFIG_HUGETLB_PAGE, the 'vma' variable is never referenced on x86, so we get this warning: mm/hmm.c: In function 'hmm_vma_walk_pud': mm/hmm.c:764:25: error: unused variable 'vma' [-Werror=unused-variable] Remove the local variable by open-coding walk-vma in the only place it is used. Reported-by: John Hubbard <jhubbard@xxxxxxxxxx> Suggested-by: John Hubbard <jhubbard@xxxxxxxxxx> Fixes: 1bed8a07a556 ("mm/hmm: allow to mirror vma of a file on a DAX backed filesystem") Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> --- Andrew, you already took a similar patch from me for a different warning in the same file. Feel free to fold both patches into one if you haven't already forwarded the first patch, or leave them separate. Note that the warnings were introduced by different patches from the same series originally. --- mm/hmm.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/mm/hmm.c b/mm/hmm.c index c4beb1628cad..c1cbe82d12b5 100644 --- a/mm/hmm.c +++ b/mm/hmm.c @@ -761,7 +761,6 @@ static int hmm_vma_walk_pud(pud_t *pudp, { struct hmm_vma_walk *hmm_vma_walk = walk->private; struct hmm_range *range = hmm_vma_walk->range; - struct vm_area_struct *vma = walk->vma; unsigned long addr = start, next; pmd_t *pmdp; pud_t pud; @@ -807,7 +806,7 @@ static int hmm_vma_walk_pud(pud_t *pudp, return 0; } - split_huge_pud(vma, pudp, addr); + split_huge_pud(walk->vma, pudp, addr); if (pud_none(*pudp)) goto again; -- 2.20.0