Skip to content
  1. Jan 21, 2022
    • Jinrong Liang's avatar
      selftests: kvm/x86: Fix the warning in lib/x86_64/processor.c · 83a34ad8
      Jinrong Liang authored
      
      
      The following warning appears when executing
      make -C tools/testing/selftests/kvm
      
      include/x86_64/processor.h:290:2: warning: 'ecx' may be used uninitialized in this
      function [-Wmaybe-uninitialized]
        asm volatile("cpuid"
        ^~~
      lib/x86_64/processor.c:1523:21: note: 'ecx' was declared here
        uint32_t eax, ebx, ecx, edx, max_ext_leaf;
      
      Just initialize ecx to remove this warning.
      
      Fixes: c8cc43c1 ("selftests: KVM: avoid failures due to reserved HyperTransport region")
      Signed-off-by: default avatarJinrong Liang <cloudliang@tencent.com>
      Message-Id: <20220119140325.59369-1-cloudliang@tencent.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      83a34ad8
    • Jinrong Liang's avatar
      selftests: kvm/x86: Fix the warning in pmu_event_filter_test.c · a0f4ba7f
      Jinrong Liang authored
      
      
      The following warning appears when executing
      make -C tools/testing/selftests/kvm
      
      x86_64/pmu_event_filter_test.c: In function 'vcpu_supports_intel_br_retired':
      x86_64/pmu_event_filter_test.c:241:28: warning: variable 'cpuid' set but not used [-Wunused-but-set-variable]
        241 |         struct kvm_cpuid2 *cpuid;
            |                            ^~~~~
      x86_64/pmu_event_filter_test.c: In function 'vcpu_supports_amd_zen_br_retired':
      x86_64/pmu_event_filter_test.c:258:28: warning: variable 'cpuid' set but not used [-Wunused-but-set-variable]
        258 |         struct kvm_cpuid2 *cpuid;
            |                            ^~~~~
      
      Just delete the unused variables to stay away from warnings.
      
      Fixes: dc7e75b3b3ee ("selftests: kvm/x86: Add test for KVM_SET_PMU_EVENT_FILTER")
      Signed-off-by: default avatarJinrong Liang <cloudliang@tencent.com>
      Message-Id: <20220119133910.56285-1-cloudliang@tencent.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      a0f4ba7f
  2. Jan 20, 2022
  3. Jan 18, 2022
    • Marcelo Tosatti's avatar
      KVM: VMX: switch blocked_vcpu_on_cpu_lock to raw spinlock · 5f02ef74
      Marcelo Tosatti authored
      
      
      blocked_vcpu_on_cpu_lock is taken from hard interrupt context
      (pi_wakeup_handler), therefore it cannot sleep.
      
      Switch it to a raw spinlock.
      
      Fixes:
      
      [41297.066254] BUG: scheduling while atomic: CPU 0/KVM/635218/0x00010001
      [41297.066323] Preemption disabled at:
      [41297.066324] [<ffffffff902ee47f>] irq_enter_rcu+0xf/0x60
      [41297.066339] Call Trace:
      [41297.066342]  <IRQ>
      [41297.066346]  dump_stack_lvl+0x34/0x44
      [41297.066353]  ? irq_enter_rcu+0xf/0x60
      [41297.066356]  __schedule_bug.cold+0x7d/0x8b
      [41297.066361]  __schedule+0x439/0x5b0
      [41297.066365]  ? task_blocks_on_rt_mutex.constprop.0.isra.0+0x1b0/0x440
      [41297.066369]  schedule_rtlock+0x1e/0x40
      [41297.066371]  rtlock_slowlock_locked+0xf1/0x260
      [41297.066374]  rt_spin_lock+0x3b/0x60
      [41297.066378]  pi_wakeup_handler+0x31/0x90 [kvm_intel]
      [41297.066388]  sysvec_kvm_posted_intr_wakeup_ipi+0x9d/0xd0
      [41297.066392]  </IRQ>
      [41297.066392]  asm_sysvec_kvm_posted_intr_wakeup_ipi+0x12/0x20
      ...
      
      Signed-off-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      5f02ef74