• Paolo Bonzini's avatar
    KVM: x86: leave kvm.ko out of the build if no vendor module is requested · ea4290d7
    Paolo Bonzini authored
    kvm.ko is nothing but library code shared by kvm-intel.ko and kvm-amd.ko.
    It provides no functionality on its own and it is unnecessary unless one
    of the vendor-specific module is compiled.  In particular, /dev/kvm is
    not created until one of kvm-intel.ko or kvm-amd.ko is loaded.
    
    Use CONFIG_KVM to decide if it is built-in or a module, but use the
    vendor-specific modules for the actual decision on whether to build it.
    
    This also fixes a build failure when CONFIG_KVM_INTEL and CONFIG_KVM_AMD
    are both disabled.  The cpu_emergency_register_virt_callback() function
    is called from kvm.ko, but it is only defined if at least one of
    CONFIG_KVM_INTEL and CONFIG_KVM_AMD is provided.
    
    Fixes: 590b09b1 ("KVM: x86: Register "emergency disable" callbacks when virt is enabled")
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    ea4290d7
Kconfig 6.56 KB