Re: [PATCH v4 0/3] qrwlock: Introducing a queue read/write lock implementation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:

> On Wed, Oct 02, 2013 at 10:09:03AM -0400, Waiman Long wrote:
> > v3->v4:
> >  - Optimize the fast path with better cold cache behavior and
> >    performance.
> >  - Removing some testing code.
> >  - Make x86 use queue rwlock with no user configuration.
> 
> >  arch/x86/Kconfig                      |    1 +
> >  arch/x86/include/asm/spinlock.h       |    2 +
> >  arch/x86/include/asm/spinlock_types.h |    4 +
> >  include/asm-generic/qrwlock.h         |  256 +++++++++++++++++++++++++++++++++
> >  include/linux/rwlock.h                |   15 ++
> >  include/linux/rwlock_types.h          |   13 ++
> >  kernel/Kconfig.locks                  |    7 +
> >  lib/Makefile                          |    1 +
> >  lib/qrwlock.c                         |  247 +++++++++++++++++++++++++++++++
> >  lib/spinlock_debug.c                  |   19 +++
> >  10 files changed, 565 insertions(+), 0 deletions(-)
> >  create mode 100644 include/asm-generic/qrwlock.h
> >  create mode 100644 lib/qrwlock.c
> 
> 
> Where's the ---- for removing the old rwlock from x86?

Also, if we go this route then please name it as much rwlock_t as possible 
- we didn't rename spinlock internals to 'qspinlock' either when queueing 
was added.

It's a new implementation, not a different lock type.

For a test prototype it's OK - just not for the final form IMO.

Also, at first glance there's little reason why this should be x86 only. 
It uses fairly generic SMP primitives that should be available on every 
architecture.

Assuming the performance figures are right.

Thanks,

	Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-arch" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux