All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/3] locking/rwsem: Rwsem rearchitecture part 0
@ 2019-03-22 14:30 ` Waiman Long
  0 siblings, 0 replies; 108+ messages in thread
From: Waiman Long @ 2019-03-22 14:30 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Will Deacon, Thomas Gleixner
  Cc: linux-kernel, linux-alpha, linux-arm-kernel, linux-c6x-dev,
	uclinux-h8-devel, linux-hexagon, linux-ia64, linux-m68k,
	linux-mips, nios2-dev, openrisc, linux-parisc, linuxppc-dev,
	linux-riscv, linux-s390, linux-sh, sparclinux, linux-um,
	linux-xtensa, linux-arch, x86, Arnd Bergmann, Borislav Petkov,
	H. Peter Anvin, Davidlohr Bueso

v5:
 - Rebase to the latest v5.1 tree and fix conflicts in 
   arch/{xtensa,s390}/include/asm/Kbuild.

v4:
 - Remove rwsem-spinlock.c and make all archs use rwsem-xadd.c.

v3:
 - Optimize __down_read_trylock() for the uncontended case as suggested
   by Linus.

v2:
 - Add patch 2 to optimize __down_read_trylock() as suggested by PeterZ.
 - Update performance test data in patch 1.

The goal of this patchset is to remove the architecture specific files
for rwsem-xadd to make it easer to add enhancements in the later rwsem
patches. It also removes the legacy rwsem-spinlock.c file and make all
the architectures use one single implementation of rwsem - rwsem-xadd.c.

Waiman Long (3):
  locking/rwsem: Remove arch specific rwsem files
  locking/rwsem: Remove rwsem-spinlock.c & use rwsem-xadd.c for all
    archs
  locking/rwsem: Optimize down_read_trylock()

 MAINTAINERS                     |   1 -
 arch/alpha/Kconfig              |   7 -
 arch/alpha/include/asm/rwsem.h  | 211 --------------------
 arch/arc/Kconfig                |   3 -
 arch/arm/Kconfig                |   4 -
 arch/arm/include/asm/Kbuild     |   1 -
 arch/arm64/Kconfig              |   3 -
 arch/arm64/include/asm/Kbuild   |   1 -
 arch/c6x/Kconfig                |   3 -
 arch/csky/Kconfig               |   3 -
 arch/h8300/Kconfig              |   3 -
 arch/hexagon/Kconfig            |   6 -
 arch/hexagon/include/asm/Kbuild |   1 -
 arch/ia64/Kconfig               |   4 -
 arch/ia64/include/asm/rwsem.h   | 172 ----------------
 arch/m68k/Kconfig               |   7 -
 arch/microblaze/Kconfig         |   6 -
 arch/mips/Kconfig               |   7 -
 arch/nds32/Kconfig              |   3 -
 arch/nios2/Kconfig              |   3 -
 arch/openrisc/Kconfig           |   6 -
 arch/parisc/Kconfig             |   6 -
 arch/powerpc/Kconfig            |   7 -
 arch/powerpc/include/asm/Kbuild |   1 -
 arch/riscv/Kconfig              |   3 -
 arch/s390/Kconfig               |   6 -
 arch/s390/include/asm/Kbuild    |   1 -
 arch/sh/Kconfig                 |   6 -
 arch/sh/include/asm/Kbuild      |   1 -
 arch/sparc/Kconfig              |   8 -
 arch/sparc/include/asm/Kbuild   |   1 -
 arch/unicore32/Kconfig          |   6 -
 arch/x86/Kconfig                |   3 -
 arch/x86/include/asm/rwsem.h    | 237 ----------------------
 arch/x86/lib/Makefile           |   1 -
 arch/x86/lib/rwsem.S            | 156 ---------------
 arch/x86/um/Kconfig             |   6 -
 arch/x86/um/Makefile            |   1 -
 arch/xtensa/Kconfig             |   3 -
 arch/xtensa/include/asm/Kbuild  |   1 -
 include/asm-generic/rwsem.h     | 140 -------------
 include/linux/rwsem-spinlock.h  |  47 -----
 include/linux/rwsem.h           |   9 +-
 kernel/Kconfig.locks            |   2 +-
 kernel/locking/Makefile         |   4 +-
 kernel/locking/percpu-rwsem.c   |   2 +
 kernel/locking/rwsem-spinlock.c | 339 --------------------------------
 kernel/locking/rwsem.h          | 130 ++++++++++++
 48 files changed, 135 insertions(+), 1447 deletions(-)
 delete mode 100644 arch/alpha/include/asm/rwsem.h
 delete mode 100644 arch/ia64/include/asm/rwsem.h
 delete mode 100644 arch/x86/include/asm/rwsem.h
 delete mode 100644 arch/x86/lib/rwsem.S
 delete mode 100644 include/asm-generic/rwsem.h
 delete mode 100644 include/linux/rwsem-spinlock.h
 delete mode 100644 kernel/locking/rwsem-spinlock.c

-- 
2.18.1

^ permalink raw reply	[flat|nested] 108+ messages in thread

end of thread, other threads:[~2019-04-03 12:57 UTC | newest]

Thread overview: 108+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-22 14:30 [PATCH v5 0/3] locking/rwsem: Rwsem rearchitecture part 0 Waiman Long
2019-03-22 14:30 ` Waiman Long
2019-03-22 14:30 ` Waiman Long
2019-03-22 14:30 ` [OpenRISC] " Waiman Long
2019-03-22 14:30 ` Waiman Long
2019-03-22 14:30 ` Waiman Long
2019-03-22 14:30 ` Waiman Long
2019-03-22 14:30 ` Waiman Long
2019-03-22 14:30 ` Waiman Long
2019-03-22 14:30 ` [PATCH v5 1/3] locking/rwsem: Remove arch specific rwsem files Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` [OpenRISC] " Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 17:01   ` Linus Torvalds
2019-03-22 17:01     ` [OpenRISC] " Linus Torvalds
2019-03-22 17:01     ` Linus Torvalds
2019-03-22 17:01     ` Linus Torvalds
2019-03-22 17:01     ` Linus Torvalds
2019-03-22 17:01     ` Linus Torvalds
2019-03-22 17:01     ` Linus Torvalds
2019-03-22 17:23     ` Waiman Long
2019-03-22 17:23       ` [OpenRISC] " Waiman Long
2019-03-22 17:23       ` Waiman Long
2019-03-22 17:23       ` Waiman Long
2019-03-22 17:23       ` Waiman Long
2019-03-22 17:23       ` Waiman Long
2019-03-22 17:23       ` Waiman Long
2019-03-22 19:30     ` Davidlohr Bueso
2019-03-22 19:30       ` Davidlohr Bueso
2019-03-22 19:30       ` [OpenRISC] " Davidlohr Bueso
2019-03-22 19:30       ` Davidlohr Bueso
2019-03-22 19:30       ` Davidlohr Bueso
2019-03-22 19:30       ` Davidlohr Bueso
2019-03-22 19:30       ` Davidlohr Bueso
2019-03-22 19:30       ` Davidlohr Bueso
2019-03-22 20:27       ` Waiman Long
2019-03-22 20:27         ` [OpenRISC] " Waiman Long
2019-03-22 20:27         ` Waiman Long
2019-03-22 20:27         ` Waiman Long
2019-03-22 20:27         ` Waiman Long
2019-03-22 20:27         ` Waiman Long
2019-03-22 20:27         ` Waiman Long
2019-04-03 10:44   ` [tip:locking/core] " tip-bot for Waiman Long
2019-04-03 12:47     ` Peter Zijlstra
2019-04-03 12:55   ` tip-bot for Waiman Long
2019-03-22 14:30 ` [PATCH v5 2/3] locking/rwsem: Remove rwsem-spinlock.c & use rwsem-xadd.c for all archs Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` [OpenRISC] " Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 17:07   ` Linus Torvalds
2019-03-22 17:07     ` [OpenRISC] " Linus Torvalds
2019-03-22 17:07     ` Linus Torvalds
2019-03-22 17:07     ` Linus Torvalds
2019-03-22 17:07     ` Linus Torvalds
2019-03-22 17:07     ` Linus Torvalds
2019-03-22 17:07     ` Linus Torvalds
2019-04-03 10:44   ` [tip:locking/core] " tip-bot for Waiman Long
2019-04-03 12:55   ` tip-bot for Waiman Long
2019-03-22 14:30 ` [PATCH v5 3/3] locking/rwsem: Optimize down_read_trylock() Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` [OpenRISC] " Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 14:30   ` Waiman Long
2019-03-22 17:08   ` Linus Torvalds
2019-03-22 17:08     ` [OpenRISC] " Linus Torvalds
2019-03-22 17:08     ` Linus Torvalds
2019-03-22 17:08     ` Linus Torvalds
2019-03-22 17:08     ` Linus Torvalds
2019-03-22 17:08     ` Linus Torvalds
2019-03-22 17:08     ` Linus Torvalds
2019-03-22 17:25   ` Russell King - ARM Linux admin
2019-03-22 17:25     ` Russell King - ARM Linux admin
2019-03-22 17:25     ` [OpenRISC] " Russell King - ARM Linux admin
2019-03-22 17:25     ` Russell King - ARM Linux admin
2019-03-22 17:25     ` Russell King - ARM Linux admin
2019-03-22 17:25     ` Russell King - ARM Linux admin
2019-03-22 17:25     ` Russell King - ARM Linux admin
2019-03-22 17:25     ` Russell King - ARM Linux admin
2019-03-22 17:41     ` Waiman Long
2019-03-22 17:41       ` [OpenRISC] " Waiman Long
2019-03-22 17:41       ` Waiman Long
2019-03-22 17:41       ` Waiman Long
2019-03-22 17:41       ` Waiman Long
2019-03-22 17:41       ` Waiman Long
2019-03-22 17:41       ` Waiman Long
2019-03-25 15:25   ` Christophe Leroy
2019-03-25 15:25     ` [OpenRISC] " Christophe Leroy
2019-03-25 15:25     ` Christophe Leroy
2019-03-25 15:25     ` Christophe Leroy
2019-03-25 15:25     ` Christophe Leroy
2019-03-25 15:25     ` Christophe Leroy
2019-03-25 15:25     ` Christophe Leroy
2019-04-03 10:45   ` [tip:locking/core] " tip-bot for Waiman Long
2019-04-03 12:56   ` tip-bot for Waiman Long

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.