Skip to content

Commit

Permalink
Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm…
Browse files Browse the repository at this point in the history
…/linux/kernel/git/tip/tip

Pull locking updates from Ingo Molnar:
 "Here are the locking changes in this cycle:

   - rwsem unification and simpler micro-optimizations to prepare for
     more intrusive (and more lucrative) scalability improvements in
     v5.3 (Waiman Long)

   - Lockdep irq state tracking flag usage cleanups (Frederic
     Weisbecker)

   - static key improvements (Jakub Kicinski, Peter Zijlstra)

   - misc updates, cleanups and smaller fixes"

* 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (26 commits)
  locking/lockdep: Remove unnecessary unlikely()
  locking/static_key: Don't take sleeping locks in __static_key_slow_dec_deferred()
  locking/static_key: Factor out the fast path of static_key_slow_dec()
  locking/static_key: Add support for deferred static branches
  locking/lockdep: Test all incompatible scenarios at once in check_irq_usage()
  locking/lockdep: Avoid bogus Clang warning
  locking/lockdep: Generate LOCKF_ bit composites
  locking/lockdep: Use expanded masks on find_usage_*() functions
  locking/lockdep: Map remaining magic numbers to lock usage mask names
  locking/lockdep: Move valid_state() inside CONFIG_TRACE_IRQFLAGS && CONFIG_PROVE_LOCKING
  locking/rwsem: Prevent unneeded warning during locking selftest
  locking/rwsem: Optimize rwsem structure for uncontended lock acquisition
  locking/rwsem: Enable lock event counting
  locking/lock_events: Don't show pvqspinlock events on bare metal
  locking/lock_events: Make lock_events available for all archs & other locks
  locking/qspinlock_stat: Introduce generic lockevent_*() counting APIs
  locking/rwsem: Enhance DEBUG_RWSEMS_WARN_ON() macro
  locking/rwsem: Add debug check for __down_read*()
  locking/rwsem: Micro-optimize rwsem_try_read_lock_unqueued()
  locking/rwsem: Move rwsem internal function declarations to rwsem-xadd.h
  ...
  • Loading branch information
torvalds committed May 6, 2019
2 parents 2f1835d + d671002 commit 007dc78
Show file tree
Hide file tree
Showing 62 changed files with 983 additions and 1,925 deletions.
1 change: 0 additions & 1 deletion MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -9100,7 +9100,6 @@ F: arch/*/include/asm/spinlock*.h
F: include/linux/rwlock*.h
F: include/linux/mutex*.h
F: include/linux/rwsem*.h
F: arch/*/include/asm/rwsem.h
F: include/linux/seqlock.h
F: lib/locking*.[ch]
F: kernel/locking/
Expand Down
9 changes: 9 additions & 0 deletions arch/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -907,6 +907,15 @@ config HAVE_ARCH_PREL32_RELOCATIONS
config ARCH_USE_MEMREMAP_PROT
bool

config LOCK_EVENT_COUNTS
bool "Locking event counts collection"
depends on DEBUG_FS
---help---
Enable light-weight counting of various locking related events
in the system with minimal performance impact. This reduces
the chance of application behavior change because of timing
differences. The counts are reported via debugfs.

source "kernel/gcov/Kconfig"

source "scripts/gcc-plugins/Kconfig"
Expand Down
7 changes: 0 additions & 7 deletions arch/alpha/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,6 @@ config MMU
bool
default y

config RWSEM_GENERIC_SPINLOCK
bool

config RWSEM_XCHGADD_ALGORITHM
bool
default y

config ARCH_HAS_ILOG2_U32
bool
default n
Expand Down
211 changes: 0 additions & 211 deletions arch/alpha/include/asm/rwsem.h

This file was deleted.

3 changes: 0 additions & 3 deletions arch/arc/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,6 @@ config SCHED_OMIT_FRAME_POINTER
config GENERIC_CSUM
def_bool y

config RWSEM_GENERIC_SPINLOCK
def_bool y

config ARCH_DISCONTIGMEM_ENABLE
def_bool n

Expand Down
4 changes: 0 additions & 4 deletions arch/arm/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -178,10 +178,6 @@ config TRACE_IRQFLAGS_SUPPORT
bool
default !CPU_V7M

config RWSEM_XCHGADD_ALGORITHM
bool
default y

config ARCH_HAS_ILOG2_U32
bool

Expand Down
1 change: 0 additions & 1 deletion arch/arm/include/asm/Kbuild
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ generic-y += mm-arch-hooks.h
generic-y += msi.h
generic-y += parport.h
generic-y += preempt.h
generic-y += rwsem.h
generic-y += seccomp.h
generic-y += segment.h
generic-y += serial.h
Expand Down
3 changes: 0 additions & 3 deletions arch/arm64/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -236,9 +236,6 @@ config LOCKDEP_SUPPORT
config TRACE_IRQFLAGS_SUPPORT
def_bool y

config RWSEM_XCHGADD_ALGORITHM
def_bool y

config GENERIC_BUG
def_bool y
depends on BUG
Expand Down
1 change: 0 additions & 1 deletion arch/arm64/include/asm/Kbuild
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ generic-y += mm-arch-hooks.h
generic-y += msi.h
generic-y += qrwlock.h
generic-y += qspinlock.h
generic-y += rwsem.h
generic-y += segment.h
generic-y += serial.h
generic-y += set_memory.h
Expand Down
3 changes: 0 additions & 3 deletions arch/c6x/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,6 @@ config MMU
config FPU
def_bool n

config RWSEM_GENERIC_SPINLOCK
def_bool y

config GENERIC_CALIBRATE_DELAY
def_bool y

Expand Down
3 changes: 0 additions & 3 deletions arch/csky/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -92,9 +92,6 @@ config GENERIC_HWEIGHT
config MMU
def_bool y

config RWSEM_GENERIC_SPINLOCK
def_bool y

config STACKTRACE_SUPPORT
def_bool y

Expand Down
3 changes: 0 additions & 3 deletions arch/h8300/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,6 @@ config H8300
config CPU_BIG_ENDIAN
def_bool y

config RWSEM_GENERIC_SPINLOCK
def_bool y

config GENERIC_HWEIGHT
def_bool y

Expand Down
6 changes: 0 additions & 6 deletions arch/hexagon/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -65,12 +65,6 @@ config GENERIC_CSUM
config GENERIC_IRQ_PROBE
def_bool y

config RWSEM_GENERIC_SPINLOCK
def_bool n

config RWSEM_XCHGADD_ALGORITHM
def_bool y

config GENERIC_HWEIGHT
def_bool y

Expand Down
1 change: 0 additions & 1 deletion arch/hexagon/include/asm/Kbuild
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ generic-y += mm-arch-hooks.h
generic-y += pci.h
generic-y += percpu.h
generic-y += preempt.h
generic-y += rwsem.h
generic-y += sections.h
generic-y += segment.h
generic-y += serial.h
Expand Down
4 changes: 0 additions & 4 deletions arch/ia64/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -83,10 +83,6 @@ config STACKTRACE_SUPPORT
config GENERIC_LOCKBREAK
def_bool n

config RWSEM_XCHGADD_ALGORITHM
bool
default y

config HUGETLB_PAGE_SIZE_VARIABLE
bool
depends on HUGETLB_PAGE
Expand Down
Loading

0 comments on commit 007dc78

Please sign in to comment.