powerpc/kvm: Fix build error when PPC_MEM_KEYS/PPC_PSERIES=n
authorMichael Ellerman <mpe@ellerman.id.au>
Sun, 25 Apr 2021 11:58:31 +0000 (21:58 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 27 Apr 2021 00:48:37 +0000 (10:48 +1000)
commitee1bc694fbaec1a662770703fc34a74abf418938
treed96e60ea7939cb77ccdab7ff473a743f2f7742f7
parent30c400886bad4ac1801516683b71d7714bc2b1b1
powerpc/kvm: Fix build error when PPC_MEM_KEYS/PPC_PSERIES=n

lkp reported a randconfig failure:

     In file included from arch/powerpc/include/asm/book3s/64/pkeys.h:6,
                    from arch/powerpc/kvm/book3s_64_mmu_host.c:15:
     arch/powerpc/include/asm/book3s/64/hash-pkey.h: In function 'hash__vmflag_to_pte_pkey_bits':
  >> arch/powerpc/include/asm/book3s/64/hash-pkey.h:10:23: error: 'VM_PKEY_BIT0' undeclared
        10 |  return (((vm_flags & VM_PKEY_BIT0) ? H_PTE_PKEY_BIT0 : 0x0UL) |
         |                       ^~~~~~~~~~~~

We added the include of book3s/64/pkeys.h for pte_to_hpte_pkey_bits(),
but that header on its own should only be included when PPC_MEM_KEYS=y.
Instead include linux/pkeys.h, which brings in the right definitions
when PPC_MEM_KEYS=y and also provides empty stubs when PPC_MEM_KEYS=n.

Fixes: e4e8bc1df691 ("powerpc/kvm: Fix PR KVM with KUAP/MEM_KEYS enabled")
Cc: stable@vger.kernel.org # v5.11+
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20210425115831.2818434-1-mpe@ellerman.id.au
arch/powerpc/kvm/book3s_64_mmu_host.c