[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20130718131824.10653.qmail@science.horizon.com>
Date: 18 Jul 2013 09:18:24 -0400
From: "George Spelvin" <linux@...izon.com>
To: linux@...izon.com
Cc: linux-kernel@...r.kernel.org
Subject: Re: [PATCH RFC 1/2] qrwlock: A queue read/write lock implementation
In the interest of more useful Kconfig help, could I recommend the
following text:
config QUEUE_RWLOCK
bool "Generic queue read/write lock"
depends on ARCH_QUEUE_RWLOCK
help
Use an alternative reader-writer lock (rwlock) implementation,
optimized for larger NUMA systems. These locks use more memory,
but perform better under high contention. (Specifically, readers
waiting for a writer to release the lock will be queued rather
than all spinning on the same cache line.)
The kernel will operate correctly either way; this only
affects performance.
For common desktop and server systems systems with only one
or two CPU sockets, the performance benefits are not worth
the additional memory; say N here.
My goal is to give someone stumbling across this question for the first
time in "make oldconfig" the information htey need to answer it.
That said, I think Ingo's idea for simplfying the waiting reader side
is excellent and should be tried before bifurcating the implementation.
Looking at the lock system, it *seems* like that patch to __read_lock_failed
is literally the *only* thing that needs changing, since the write
lock/unlock is all done with relative add/sub anyway. But I keep thinking
"there must have been a reason why it wasn't done that way in the first
place".
--
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