[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+EHjTx7OF2i4MvviAXQq0v6+a7T4SMU0PGsObDBo98Y6zvrBQ@mail.gmail.com>
Date: Thu, 31 Jul 2025 09:08:33 +0100
From: Fuad Tabba <tabba@...gle.com>
To: Sean Christopherson <seanjc@...gle.com>
Cc: Paolo Bonzini <pbonzini@...hat.com>, Marc Zyngier <maz@...nel.org>,
Oliver Upton <oliver.upton@...ux.dev>, kvm@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, kvmarm@...ts.linux.dev,
linux-kernel@...r.kernel.org, Ira Weiny <ira.weiny@...el.com>,
Gavin Shan <gshan@...hat.com>, Shivank Garg <shivankg@....com>, Vlastimil Babka <vbabka@...e.cz>,
Xiaoyao Li <xiaoyao.li@...el.com>, David Hildenbrand <david@...hat.com>,
Ackerley Tng <ackerleytng@...gle.com>, Tao Chan <chentao@...inos.cn>,
James Houghton <jthoughton@...gle.com>
Subject: Re: [PATCH v17 02/24] KVM: x86: Have all vendor neutral sub-configs
depend on KVM_X86, not just KVM
On Tue, 29 Jul 2025 at 23:55, Sean Christopherson <seanjc@...gle.com> wrote:
>
> Make all vendor neutral KVM x86 configs depend on KVM_X86, not just KVM,
> i.e. gate them on at least one vendor module being enabled and thus on
> kvm.ko actually being built. Depending on just KVM allows the user to
> select the configs even though they won't actually take effect, and more
> importantly, makes it all too easy to create unmet dependencies. E.g.
> KVM_GENERIC_PRIVATE_MEM can't be selected by KVM_SW_PROTECTED_VM, because
> the KVM_GENERIC_MMU_NOTIFIER dependency is select by KVM_X86.
>
> Hiding all sub-configs when neither KVM_AMD nor KVM_INTEL is selected also
> helps communicate to the user that nothing "interesting" is going on, e.g.
>
> --- Virtualization
> <M> Kernel-based Virtual Machine (KVM) support
> < > KVM for Intel (and compatible) processors support
> < > KVM for AMD processors support
>
> Fixes: ea4290d77bda ("KVM: x86: leave kvm.ko out of the build if no vendor module is requested")
> Reviewed-by: David Hildenbrand <david@...hat.com>
> Reviewed-by: Xiaoyao Li <xiaoyao.li@...el.com>
> Signed-off-by: Sean Christopherson <seanjc@...gle.com>
> ---
Reviewed-by: Fuad Tabba <tabba@...gle.com>
Cheers,
/fuad
> arch/x86/kvm/Kconfig | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/arch/x86/kvm/Kconfig b/arch/x86/kvm/Kconfig
> index 2c86673155c9..9895fc3cd901 100644
> --- a/arch/x86/kvm/Kconfig
> +++ b/arch/x86/kvm/Kconfig
> @@ -74,7 +74,7 @@ config KVM_WERROR
> # FRAME_WARN, i.e. KVM_WERROR=y with KASAN=y requires special tuning.
> # Building KVM with -Werror and KASAN is still doable via enabling
> # the kernel-wide WERROR=y.
> - depends on KVM && ((EXPERT && !KASAN) || WERROR)
> + depends on KVM_X86 && ((EXPERT && !KASAN) || WERROR)
> help
> Add -Werror to the build flags for KVM.
>
> @@ -83,7 +83,7 @@ config KVM_WERROR
> config KVM_SW_PROTECTED_VM
> bool "Enable support for KVM software-protected VMs"
> depends on EXPERT
> - depends on KVM && X86_64
> + depends on KVM_X86 && X86_64
> help
> Enable support for KVM software-protected VMs. Currently, software-
> protected VMs are purely a development and testing vehicle for
> @@ -169,7 +169,7 @@ config KVM_AMD_SEV
> config KVM_IOAPIC
> bool "I/O APIC, PIC, and PIT emulation"
> default y
> - depends on KVM
> + depends on KVM_X86
> help
> Provides support for KVM to emulate an I/O APIC, PIC, and PIT, i.e.
> for full in-kernel APIC emulation.
> @@ -179,7 +179,7 @@ config KVM_IOAPIC
> config KVM_SMM
> bool "System Management Mode emulation"
> default y
> - depends on KVM
> + depends on KVM_X86
> help
> Provides support for KVM to emulate System Management Mode (SMM)
> in virtual machines. This can be used by the virtual machine
> @@ -189,7 +189,7 @@ config KVM_SMM
>
> config KVM_HYPERV
> bool "Support for Microsoft Hyper-V emulation"
> - depends on KVM
> + depends on KVM_X86
> default y
> help
> Provides KVM support for emulating Microsoft Hyper-V. This allows KVM
> @@ -203,7 +203,7 @@ config KVM_HYPERV
>
> config KVM_XEN
> bool "Support for Xen hypercall interface"
> - depends on KVM
> + depends on KVM_X86
> help
> Provides KVM support for the hosting Xen HVM guests and
> passing Xen hypercalls to userspace.
> @@ -213,7 +213,7 @@ config KVM_XEN
> config KVM_PROVE_MMU
> bool "Prove KVM MMU correctness"
> depends on DEBUG_KERNEL
> - depends on KVM
> + depends on KVM_X86
> depends on EXPERT
> help
> Enables runtime assertions in KVM's MMU that are too costly to enable
> @@ -228,7 +228,7 @@ config KVM_EXTERNAL_WRITE_TRACKING
>
> config KVM_MAX_NR_VCPUS
> int "Maximum number of vCPUs per KVM guest"
> - depends on KVM
> + depends on KVM_X86
> range 1024 4096
> default 4096 if MAXSMP
> default 1024
> --
> 2.50.1.552.g942d659e1b-goog
>
Powered by blists - more mailing lists