OSDN Git Service

KVM: x86: allow compiling as non-module with W=1
authorValdis Klētnieks <valdis.kletnieks@vt.edu>
Fri, 28 Feb 2020 02:49:52 +0000 (21:49 -0500)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 28 Feb 2020 09:35:37 +0000 (10:35 +0100)
commit575b255c1663c8fccc41fe965dcac281e3113c65
treefc4937fbd94f1376803b0847ec16816ad05333f3
parent8a9442f49c72bde43f982e53b74526ac37d3565b
KVM: x86: allow compiling as non-module with W=1

Compile error with CONFIG_KVM_INTEL=y and W=1:

  CC      arch/x86/kvm/vmx/vmx.o
arch/x86/kvm/vmx/vmx.c:68:32: error: 'vmx_cpu_id' defined but not used [-Werror=unused-const-variable=]
   68 | static const struct x86_cpu_id vmx_cpu_id[] = {
      |                                ^~~~~~~~~~
cc1: all warnings being treated as errors

When building with =y, the MODULE_DEVICE_TABLE macro doesn't generate a
reference to the structure (or any code at all).  This makes W=1 compiles
unhappy.

Wrap both in a #ifdef to avoid the issue.

Signed-off-by: Valdis Kletnieks <valdis.kletnieks@vt.edu>
[Do the same for CONFIG_KVM_AMD. - Paolo]
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/svm.c
arch/x86/kvm/vmx/vmx.c