Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932662AbcLHEoB (ORCPT ); Wed, 7 Dec 2016 23:44:01 -0500 Received: from blatinox.fr ([51.254.120.209]:53935 "EHLO vps202351.ovh.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751091AbcLHEoA (ORCPT ); Wed, 7 Dec 2016 23:44:00 -0500 X-Greylist: delayed 319 seconds by postgrey-1.27 at vger.kernel.org; Wed, 07 Dec 2016 23:44:00 EST From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Lefaure?= To: x86@kernel.org, Borislav Petkov , "Kirill A. Shutemov" Cc: linux-kernel@vger.kernel.org, =?UTF-8?q?J=C3=A9r=C3=A9my=20Lefaure?= Subject: [PATCH] x86/vm86: fix compilation warning on a unused variable Date: Wed, 7 Dec 2016 23:38:33 -0500 Message-Id: <20161208043833.15088-1-jeremy.lefaure@lse.epita.fr> X-Mailer: git-send-email 2.10.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1324 Lines: 36 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. In addition, checking if CONFIG_TRANSPARENT_HUGEPAGE is enabled avoids calling find_vma function for nothing. Signed-off-by: Jérémy Lefaure --- arch/x86/kernel/vm86_32.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/x86/kernel/vm86_32.c b/arch/x86/kernel/vm86_32.c index 01f30e5..0813b76 100644 --- a/arch/x86/kernel/vm86_32.c +++ b/arch/x86/kernel/vm86_32.c @@ -176,8 +176,9 @@ static void mark_screen_rdonly(struct mm_struct *mm) goto out; pmd = pmd_offset(pud, 0xA0000); - if (pmd_trans_huge(*pmd)) { - struct vm_area_struct *vma = find_vma(mm, 0xA0000); + if (IS_ENABLED(CONFIG_TRANSPARENT_HUGEPAGE) && pmd_trans_huge(*pmd)) { + struct vm_area_struct __maybe_unused *vma = find_vma(mm, + 0xA0000); split_huge_pmd(vma, pmd, 0xA0000); } if (pmd_none_or_clear_bad(pmd)) -- 2.10.2