summaryrefslogtreecommitdiffstats
path: root/arch/Kconfig
diff options
context:
space:
mode:
authorWaiman Long <longman@redhat.com>2019-04-04 13:43:17 -0400
committerIngo Molnar <mingo@kernel.org>2019-04-10 04:56:04 -0400
commitfb346fd9fc081c3d978c3f3d26d39334527a2662 (patch)
tree14c14e6b8c11ecaa8082fbcfa1cf302b98d45e45 /arch/Kconfig
parentad53fa10fa9e816067bbae7109845940f5e6df50 (diff)
locking/lock_events: Make lock_events available for all archs & other locks
The QUEUED_LOCK_STAT option to report queued spinlocks event counts was previously allowed only on x86 architecture. To make the locking event counting code more useful, it is now renamed to a more generic LOCK_EVENT_COUNTS config option. This new option will be available to all the architectures that use qspinlock at the moment. Other locking code can now start to use the generic locking event counting code by including lock_events.h and put the new locking event names into the lock_events_list.h header file. My experience with lock event counting is that it gives valuable insight on how the locking code works and what can be done to make it better. I would like to extend this benefit to other locking code like mutex and rwsem in the near future. The PV qspinlock specific code will stay in qspinlock_stat.h. The locking event counters will now reside in the <debugfs>/lock_event_counts directory. Signed-off-by: Waiman Long <longman@redhat.com> Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Acked-by: Davidlohr Bueso <dbueso@suse.de> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Borislav Petkov <bp@alien8.de> Cc: Davidlohr Bueso <dave@stgolabs.net> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Tim Chen <tim.c.chen@linux.intel.com> Cc: Will Deacon <will.deacon@arm.com> Link: http://lkml.kernel.org/r/20190404174320.22416-9-longman@redhat.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/Kconfig')
-rw-r--r--arch/Kconfig10
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/Kconfig b/arch/Kconfig
index 33687dddd86a..28c0f1ad80d7 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -901,6 +901,16 @@ config HAVE_ARCH_PREL32_RELOCATIONS
901config ARCH_USE_MEMREMAP_PROT 901config ARCH_USE_MEMREMAP_PROT
902 bool 902 bool
903 903
904config LOCK_EVENT_COUNTS
905 bool "Locking event counts collection"
906 depends on DEBUG_FS
907 depends on QUEUED_SPINLOCKS
908 ---help---
909 Enable light-weight counting of various locking related events
910 in the system with minimal performance impact. This reduces
911 the chance of application behavior change because of timing
912 differences. The counts are reported via debugfs.
913
904source "kernel/gcov/Kconfig" 914source "kernel/gcov/Kconfig"
905 915
906source "scripts/gcc-plugins/Kconfig" 916source "scripts/gcc-plugins/Kconfig"