Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1593920
| From | Davidlohr Bueso <dave@stgolabs.net> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH 0/5] locking Introduce range reader/writer lock |
| Date | 2017-03-07 07:10 +0100 |
| Message-ID | <tigat-2NF-5@gated-at.bofh.it> (permalink) |
| Organization | linux.* mail to news gateway |
Hi, Here's a very tardy proposal for enhancements to Jan's original[1] range lock using interval trees. Because at some point it would be awesome to switch mmap_sem from rwsem to range rwlock, I've focused on making it sharable and performance enhancements reducing the performance delta between this and conventional locks as much as possible -- details in patch 1. The rest of the patches adds support for testing the new lock and actually makes use of it for lustre. It has passed quite a bit of artificial pounding and I believe/hope it is in shape to consider. Applies on top of v4.11-rc1. [1] https://lkml.org/lkml/2013/1/31/483 Thanks! Davidlohr Bueso (5): locking: Introduce range reader/writer lock locking/locktorture: Fix rwsem reader_delay locking/locktorture: Fix num reader/writer corner cases locking/locktorture: Support range rwlocks staging/lustre: Use generic range rwlock drivers/gpu/drm/Kconfig | 2 - drivers/gpu/drm/i915/Kconfig | 1 - drivers/staging/lustre/lustre/llite/Makefile | 2 +- drivers/staging/lustre/lustre/llite/file.c | 21 +- .../staging/lustre/lustre/llite/llite_internal.h | 4 +- drivers/staging/lustre/lustre/llite/llite_lib.c | 3 +- drivers/staging/lustre/lustre/llite/range_lock.c | 239 ----------- drivers/staging/lustre/lustre/llite/range_lock.h | 82 ---- include/linux/range_rwlock.h | 96 +++++ kernel/locking/Makefile | 2 +- kernel/locking/locktorture.c | 299 +++++++++---- kernel/locking/range_rwlock.c | 462 +++++++++++++++++++++ lib/Kconfig | 14 - lib/Kconfig.debug | 1 - lib/Makefile | 2 +- 15 files changed, 792 insertions(+), 438 deletions(-) delete mode 100644 drivers/staging/lustre/lustre/llite/range_lock.c delete mode 100644 drivers/staging/lustre/lustre/llite/range_lock.h create mode 100644 include/linux/range_rwlock.h create mode 100644 kernel/locking/range_rwlock.c -- 2.6.6
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
[PATCH 0/5] locking Introduce range reader/writer lock Davidlohr Bueso <dave@stgolabs.net> - 2017-03-07 07:10 +0100
[PATCH 1/5] locking: Introduce range reader/writer lock Davidlohr Bueso <dave@stgolabs.net> - 2017-03-07 08:10 +0100
Re: [PATCH 1/5] locking: Introduce range reader/writer lock Jan Kara <jack@suse.cz> - 2017-03-09 12:30 +0100
[PATCH 3/5] locking/locktorture: Fix num reader/writer corner cases Davidlohr Bueso <dave@stgolabs.net> - 2017-03-07 08:10 +0100
[PATCH 2/5] locking/locktorture: Fix rwsem reader_delay Davidlohr Bueso <dave@stgolabs.net> - 2017-03-07 08:20 +0100
csiph-web