Re: [PATCH] x86/vm86: fix compilation warning on a unused variable

From: Kirill A. Shutemov
Date: Thu Dec 08 2016 - 05:50:18 EST


On Wed, Dec 07, 2016 at 11:38:33PM -0500, JÃrÃmy Lefaure wrote:
> When CONFIG_TRANSPARENT_HUGEPAGE is disabled, split_huge_pmd is a no-op
> stub. In such case, vma is unused and a compiler raises a warning:
>
> arch/x86/kernel/vm86_32.c: In function âmark_screen_rdonlyâ:
> arch/x86/kernel/vm86_32.c:180:26: warning: unused variable âvmaâ
> [-Wunused-variable]
> struct vm_area_struct *vma = find_vma(mm, 0xA0000);
> ^~~
> Adding __maybe_unused in the vma declaration fixes this warning.

Hm. pmd_trans_huge() is zero if CONFIG_TRANSPARENT_HUGEPAGE is not set.
Compiler should get rid of whole block of code under the 'if'.

Could you share your kernel config which triggers the warning?
And what compiler do you use?

--
Kirill A. Shutemov