Subject: Re: linux-next: Tree for Jan 2 (riscv & KVM problem)

From: Randy Dunlap <[email-masked]>
Date: Tue, 2 Jan 2024 10:07:21 -0800

On 1/1/24 21:57, Stephen Rothwell wrote:
> Hi all,
> Changes since 20231222:

It is possible for a riscv randconfig to create a .config file with
CONFIG_KVM enabled but CONFIG_HAVE_KVM is not set.
Is that expected?

CONFIG_HAVE_KVM_IRQCHIP=y
CONFIG_HAVE_KVM_IRQ_ROUTING=y
CONFIG_KVM_MMIO=y
CONFIG_HAVE_KVM_MSI=y
CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
CONFIG_HAVE_KVM_VCPU_ASYNC_IOCTL=y
CONFIG_KVM_XFER_TO_GUEST_WORK=y
CONFIG_KVM_GENERIC_HARDWARE_ENABLING=y
CONFIG_KVM_GENERIC_MMU_NOTIFIER=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=m

Should arch/riscv/kvm/Kconfig: "config KVM" select HAVE_KVM
along with the other selects there or should that "config KVM"
depend on HAVE_KVM?

The problem .config file causes build errors because EVENTFD
is not set:

../arch/riscv/kvm/../../../virt/kvm/eventfd.c: In function 'kvm_irqfd_assign':
../arch/riscv/kvm/../../../virt/kvm/eventfd.c:335:19: error: implicit declaration of function 'eventfd_ctx_fileget'; did you mean 'eventfd_ctx_fdget'? [-Werror=implicit-function-declaration]
  335 |         eventfd = eventfd_ctx_fileget(f.file);
      |                   ^~~~~~~~~~~~~~~~~~~
      |                   eventfd_ctx_fdget
../arch/riscv/kvm/../../../virt/kvm/eventfd.c:335:17: warning: assignment to 'struct eventfd_ctx *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
  335 |         eventfd = eventfd_ctx_fileget(f.file);
      |                 ^

-- 
#Randy