Re: [PATCH resend] powerpc: enable qspinlock and its virtualization support

From: Waiman Long
Date: Thu Apr 28 2016 - 17:08:14 EST


On 04/28/2016 06:55 AM, Pan Xinhui wrote:
From: Pan Xinhui<xinhui.pan@xxxxxxxxxxxxxxxxxx>

This patch aims to enable qspinlock on PPC. And on pseries platform, it also support
paravirt qspinlock.

Signed-off-by: Pan Xinhui<xinhui.pan@xxxxxxxxxxxxxxxxxx>
---
arch/powerpc/include/asm/qspinlock.h | 37 +++++++++++++++
arch/powerpc/include/asm/qspinlock_paravirt.h | 36 +++++++++++++++
.../powerpc/include/asm/qspinlock_paravirt_types.h | 13 ++++++
arch/powerpc/include/asm/spinlock.h | 31 ++++++++-----
arch/powerpc/include/asm/spinlock_types.h | 4 ++
arch/powerpc/kernel/paravirt.c | 52 ++++++++++++++++++++++
arch/powerpc/lib/locks.c | 32 +++++++++++++
arch/powerpc/platforms/pseries/setup.c | 5 +++
8 files changed, 198 insertions(+), 12 deletions(-)
create mode 100644 arch/powerpc/include/asm/qspinlock.h
create mode 100644 arch/powerpc/include/asm/qspinlock_paravirt.h
create mode 100644 arch/powerpc/include/asm/qspinlock_paravirt_types.h
create mode 100644 arch/powerpc/kernel/paravirt.c



This is just an enablement patch. You will also need a patch to activate qspinlock for, at lease, some PPC configs. Right?

It has dependency on the pv_wait() patch that I sent out extend the parameter list. Some performance data on how PPC system will perform with and without qspinlock will also be helpful data points.

Cheers,
Longman