KVM: MMU: mark role_regs and role accessors as maybe unused
authorPaolo Bonzini <pbonzini@redhat.com>
Mon, 6 Sep 2021 09:52:23 +0000 (05:52 -0400)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 6 Sep 2021 10:56:38 +0000 (06:56 -0400)
It is reasonable for these functions to be used only in some configurations,
for example only if the host is 64-bits (and therefore supports 64-bit
guests).  It is also reasonable to keep the role_regs and role accessors
in sync even though some of the accessors may be used only for one of the
two sets (as is the case currently for CR4.LA57)..

Because clang reports warnings for unused inlines declared in a .c file,
mark both sets of accessors as __maybe_unused.

Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/mmu/mmu.c

index 9b0cdec..2d7e611 100644 (file)
@@ -204,7 +204,7 @@ struct kvm_mmu_role_regs {
  * the single source of truth for the MMU's state.
  */
 #define BUILD_MMU_ROLE_REGS_ACCESSOR(reg, name, flag)                  \
-static inline bool ____is_##reg##_##name(struct kvm_mmu_role_regs *regs)\
+static inline bool __maybe_unused ____is_##reg##_##name(struct kvm_mmu_role_regs *regs)\
 {                                                                      \
        return !!(regs->reg & flag);                                    \
 }
@@ -226,7 +226,7 @@ BUILD_MMU_ROLE_REGS_ACCESSOR(efer, lma, EFER_LMA);
  * and the vCPU may be incorrect/irrelevant.
  */
 #define BUILD_MMU_ROLE_ACCESSOR(base_or_ext, reg, name)                \
-static inline bool is_##reg##_##name(struct kvm_mmu *mmu)      \
+static inline bool __maybe_unused is_##reg##_##name(struct kvm_mmu *mmu)       \
 {                                                              \
        return !!(mmu->mmu_role. base_or_ext . reg##_##name);   \
 }