TencentOS-kernel/arch/x86
Mungerjiang 2a2c1f5b4c x86/kvm: Add nopvspin parameter to disable PV spinlocks
upstream:05eee619ed61c8cd89633954d38c4e5653086845

    x86/kvm: Add "nopvspin" parameter to disable PV spinlocks

    There are cases where a guest tries to switch spinlocks to bare metal
    behavior (e.g. by setting "xen_nopvspin" on XEN platform and
    "hv_nopvspin" on HYPER_V).

    That feature is missed on KVM, add a new parameter "nopvspin" to disable
    PV spinlocks for KVM guest.

    The new 'nopvspin' parameter will also replace Xen and Hyper-V specific
    parameters in future patches.

    Define variable nopvsin as global because it will be used in future
    patches as above.

    Signed-off-by: Zhenzhong Duan <zhenzhong.duan@oracle.com>
    Reviewed-by: Vitaly Kuznetsov <vkuznets@redhat.com>
    Cc: Jonathan Corbet <corbet@lwn.net>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: "H. Peter Anvin" <hpa@zytor.com>
    Cc: Paolo Bonzini <pbonzini@redhat.com>
    Cc: Radim Krcmar <rkrcmar@redhat.com>
    Cc: Sean Christopherson <sean.j.christopherson@intel.com>
    Cc: Vitaly Kuznetsov <vkuznets@redhat.com>
    Cc: Wanpeng Li <wanpengli@tencent.com>
    Cc: Jim Mattson <jmattson@google.com>
    Cc: Joerg Roedel <joro@8bytes.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Will Deacon <will@kernel.org>
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-11-30 15:42:10 +08:00
..
boot x86/asm: Replace __force_order with a memory clobber 2021-03-16 16:39:12 +08:00
configs vgacon: remove software scrollback support 2021-03-16 16:36:07 +08:00
crypto crypto: x86/aes-ni-xts - use direct calls to and 4-way stride 2021-04-12 12:53:14 +08:00
entry sli/cpu: introduce longsys check 2021-10-29 06:51:52 +00:00
events perf/amd/uncore: Add support for Family 19h L3 PMU 2021-09-23 19:21:43 +08:00
hyperv x86/hyperv: check cpu mask after interrupt has been disabled 2021-04-12 12:51:21 +08:00
ia32 Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
include x86/kvm: Add nopvspin parameter to disable PV spinlocks 2021-11-30 15:42:10 +08:00
kernel x86/kvm: Add nopvspin parameter to disable PV spinlocks 2021-11-30 15:42:10 +08:00
kvm x86/process/64: Make save_fsgs_for_kvm() ready for FSGSBASE 2021-08-17 06:29:11 +00:00
lib x86/cpufeatures: Add support for fast short REP; MOVSB 2021-11-30 15:41:45 +08:00
math-emu x86: math-emu: Fix up 'cmp' insn for clang ias 2021-03-16 16:32:34 +08:00
mm x86/traps: Attempt to fixup exceptions in vDSO before signaling 2021-07-12 08:56:46 +00:00
net bpf, x86: Validate computation of branch displacements for x86-32 2021-05-20 16:06:54 +08:00
oprofile Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
pci x86/PCI: Fix intel_mid_pci.c build error when ACPI is not enabled 2021-03-16 16:39:28 +08:00
platform efi/x86: Free efi_pgd with free_pages() 2021-03-16 16:41:24 +08:00
power x86/asm/32: Add ENDs to some functions and relabel with SYM_CODE_* 2021-04-12 12:51:15 +08:00
purgatory x86/purgatory: Disable various profiling and sanitizing options 2021-03-16 16:30:08 +08:00
ras Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
realmode x86/asm/32: Add ENDs to some functions and relabel with SYM_CODE_* 2021-04-12 12:51:15 +08:00
tools x86/build: Treat R_386_PLT32 relocation as R_386_PC32 2021-04-12 12:52:46 +08:00
um Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
video Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
xen Xen/gnttab: handle p2m update errors on a per-slot basis 2021-04-12 12:52:49 +08:00
.gitignore Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
Kbuild Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
Kconfig x86/sgx: Initialize metadata for Enclave Page Cache (EPC) sections 2021-07-12 08:56:46 +00:00
Kconfig.cpu x86/intel: Initialize IA32_FEAT_CTL MSR at boot 2021-07-12 08:56:46 +00:00
Kconfig.debug Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
Makefile x86/build: Propagate $(CLANG_FLAGS) to $(REALMODE_FLAGS) 2021-05-20 16:07:24 +08:00
Makefile.um Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
Makefile_32.cpu Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00