|
|
Log in / Subscribe / Register

perpcu rwsem, fs/locks and killing lglocks

From:  Peter Zijlstra <peterz-AT-infradead.org>
To:  oleg-AT-redhat.com, paulmck-AT-linux.vnet.ibm.com, tj-AT-kernel.org, mingo-AT-redhat.com, linux-kernel-AT-vger.kernel.org, der.herr-AT-hofr.at, peterz-AT-infradead.org, dave-AT-stgolabs.net, riel-AT-redhat.com, viro-AT-ZenIV.linux.org.uk, torvalds-AT-linux-foundation.org, wagi-AT-monom.org
Subject:  [PATCH 0/7] perpcu rwsem, fs/locks and killing lglocks
Date:  Mon, 05 Sep 2016 21:40:54 +0200
Message-ID:  <20160905194054.369038779@infradead.org>

Hi all,

Here are some patches that I've been sitting on for far too long now.

They're a respin of earlier work [1], and have been verified by Daniel Wagner
to not suffer the regression he measured with the previous set (part of which
was operator error).

Patches 4 and 5 were needed to solve a (smallish) performance regression on
CONFIG_PREEMPT=y. They avoid a number of preemption points (and code).

I was going to gather pretty numbers from Daniels data, but I keep putting that
off and figured I ought to send the patches already.

[1] https://lkml.kernel.org/r/20150622121623.291363374@infrad...

---
 Documentation/locking/lglock.txt | 166 ---------------------------------------
 fs/Kconfig                       |   1 +
 fs/locks.c                       |  68 +++++++++++-----
 include/linux/lglock.h           |  81 -------------------
 include/linux/percpu-rwsem.h     |  36 +++++++--
 kernel/locking/Makefile          |   1 -
 kernel/locking/lglock.c          | 111 --------------------------
 kernel/stop_machine.c            |  42 ++++++----
 8 files changed, 107 insertions(+), 399 deletions(-)



Copyright © 2016, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds