[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1550095217-12047-1-git-send-email-longman@redhat.com>
Date: Wed, 13 Feb 2019 17:00:14 -0500
From: Waiman Long <longman@...hat.com>
To: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Will Deacon <will.deacon@....com>,
Thomas Gleixner <tglx@...utronix.de>
Cc: linux-kernel@...r.kernel.org, linux-alpha@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-c6x-dev@...ux-c6x.org,
uclinux-h8-devel@...ts.sourceforge.jp,
linux-hexagon@...r.kernel.org, linux-ia64@...r.kernel.org,
linux-m68k@...ts.linux-m68k.org, linux-mips@...r.kernel.org,
nios2-dev@...ts.rocketboards.org, openrisc@...ts.librecores.org,
linux-parisc@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org,
linux-riscv@...ts.infradead.org, linux-s390@...r.kernel.org,
linux-sh@...r.kernel.org, sparclinux@...r.kernel.org,
linux-um@...ts.infradead.org, linux-xtensa@...ux-xtensa.org,
linux-arch@...r.kernel.org, x86@...nel.org,
Arnd Bergmann <arnd@...db.de>, Borislav Petkov <bp@...en8.de>,
"H. Peter Anvin" <hpa@...or.com>,
Davidlohr Bueso <dave@...olabs.net>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Tim Chen <tim.c.chen@...ux.intel.com>,
Waiman Long <longman@...hat.com>
Subject: [PATCH v4 0/3] locking/rwsem: Rwsem rearchitecture part 0
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
--
1.8.3.1
Powered by blists - more mailing lists