Peter/Thomas, can you apply this to tip or give your Acked-by? Thanks, Paolo On 23/10/19 13:16, Zhenzhong Duan wrote: > There are cases folks want to disable spinlock optimization for > debug/test purpose. Xen and hyperv already have parameters "xen_nopvspin" > and "hv_nopvspin" to support that, but kvm doesn't. > > The first patch adds that feature to KVM guest with "nopvspin". > > For compatibility reason original parameters "xen_nopvspin" and > "hv_nopvspin" are retained and marked obsolete. > > v8: > PATCH2: use 'kvm-guest' instead of 'kvm_guest' [Sean Christopherson] > PATCH3: add a comment to explain missed 'return' [Sean Christopherson] > > v7: > PATCH3: update comment and use goto, add RB [Vitaly Kuznetsov] > > v6: > PATCH1: add Reviewed-by [Vitaly Kuznetsov] > PATCH2: change 'pv' to 'PV', add Reviewed-by [Vitaly Kuznetsov] > PATCH3: refactor 'if' branch in kvm_spinlock_init() [Vitaly Kuznetsov] > > v5: > PATCH1: new patch to revert a currently unnecessory commit, > code is simpler a bit after that change. [Boris Ostrovsky] > PATCH3: fold 'if' statement,add comments on virt_spin_lock_key, > reorder with PATCH2 to better reflect dependency > PATCH4: fold 'if' statement, add Reviewed-by [Boris Ostrovsky] > PATCH5: add Reviewed-by [Michael Kelley] > > v4: > PATCH1: use variable name nopvspin instead of pvspin and > defined it as __initdata, changed print message, > updated patch description [Sean Christopherson] > PATCH2: remove Suggested-by, use "kvm-guest:" prefix [Sean Christopherson] > PATCH3: make variable nopvsin and xen_pvspin coexist > remove Reviewed-by due to code change [Sean Christopherson] > PATCH4: make variable nopvsin and hv_pvspin coexist [Sean Christopherson] > > v3: > PATCH2: Fix indentation > > v2: > PATCH1: pick the print code change into separate PATCH2, > updated patch description [Vitaly Kuznetsov] > PATCH2: new patch with print code change [Vitaly Kuznetsov] > PATCH3: add Reviewed-by [Juergen Gross] > > Zhenzhong Duan (5): > Revert "KVM: X86: Fix setup the virt_spin_lock_key before static key > get initialized" > x86/kvm: Change print code to use pr_*() format > x86/kvm: Add "nopvspin" parameter to disable PV spinlocks > xen: Mark "xen_nopvspin" parameter obsolete > x86/hyperv: Mark "hv_nopvspin" parameter obsolete > > Documentation/admin-guide/kernel-parameters.txt | 14 ++++- > arch/x86/hyperv/hv_spinlock.c | 4 ++ > arch/x86/include/asm/qspinlock.h | 1 + > arch/x86/kernel/kvm.c | 79 ++++++++++++++++--------- > arch/x86/xen/spinlock.c | 4 +- > kernel/locking/qspinlock.c | 7 +++ > 6 files changed, 76 insertions(+), 33 deletions(-) >