[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1274733081-4623-1-git-send-email-walken@google.com>
Date: Mon, 24 May 2010 13:31:10 -0700
From: Michel Lespinasse <walken@...gle.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>,
David Howells <dhowells@...hat.com>,
Ingo Molnar <mingo@...e.hu>,
Thomas Gleixner <tglx@...utronix.de>
Cc: LKML <linux-kernel@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Mike Waychison <mikew@...gle.com>,
Suleiman Souhlal <suleiman@...gle.com>,
Ying Han <yinghan@...gle.com>
Subject: [PATCH 00/11] V4: rwsem changes + down_read_critical() proposal
This is version 4 of my rwsem changes.
Changes since V3:
- Split first x86 rwsem change in two smaller parts
- Added David's rwsem_waiter_type enum suggestion into
'rwsem: down_read_critical infrastructure support'
- Lots of minor style fixes and comments clarified
I would hope the entire series can be considered for inclusion;
however if we can not agree on the down_read_critical() bits I would
still like patches 1-7 to be independently considered as I think they
still have merit on their own.
Michel Lespinasse (11):
x86 rwsem: stay on fast path when count>0 in __up_write()
x86 rwsem: minor cleanups
rwsem: fully separate code pathes to wake writers vs readers
rwsem: lighter active count checks when waking up readers
rwsem: let RWSEM_WAITING_BIAS represent any number of waiting threads
rwsem: wake queued readers when writer blocks on active read lock
rwsem: smaller wrappers around rwsem_down_failed_common
generic rwsem: implement down_read_critical() / up_read_critical()
rwsem: down_read_critical infrastructure support
x86 rwsem: down_read_critical implementation
Use down_read_critical() for /proc/<pid>/exe and /proc/<pid>/maps files
arch/x86/include/asm/rwsem.h | 73 +++++++++++------
arch/x86/lib/rwsem_64.S | 14 +++-
arch/x86/lib/semaphore_32.S | 21 ++++-
fs/proc/base.c | 4 +-
fs/proc/task_mmu.c | 24 ++++--
include/linux/proc_fs.h | 1 +
include/linux/rwsem-spinlock.h | 10 ++-
include/linux/rwsem.h | 12 +++
kernel/rwsem.c | 35 ++++++++
lib/rwsem-spinlock.c | 10 ++-
lib/rwsem.c | 178 +++++++++++++++++++++++++---------------
11 files changed, 276 insertions(+), 106 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists