public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] lock contention tracking -v3
@ 2007-05-29 12:52 Peter Zijlstra
  2007-05-29 12:52 ` [PATCH 1/5] fix raw_spinlock_t vs lockdep Peter Zijlstra
                   ` (4 more replies)
  0 siblings, 5 replies; 32+ messages in thread
From: Peter Zijlstra @ 2007-05-29 12:52 UTC (permalink / raw)
  To: linux-kernel, Andrew Morton
  Cc: Ingo Molnar, Bill Huey, Jason Baron, Steven Rostedt,
	Christoph Hellwig, Peter Zijlstra


Use the lockdep infrastructure to track lock contention and other lock
statistics.

It tracks lock contention events, and the first four unique call-sites that
encountered contention.

It also measures lock wait-time and hold-time in nanoseconds. The minimum and
maximum times are tracked, as well as a total (which together with the number
of event can give the avg).

All statistics are done per lock class, per write (exclusive state) and per read
(shared state). 

The statistics are collected per-cpu, so that the collection overhead is
minimized via having no global cachemisses.

This new lock statistics feature is independent of the lock dependency checking
traditionally done by lockdep; it just shares the lock tracking code. It is
also possible to enable both and runtime disabled either component - thereby
avoiding the O(n^2) lock chain walks for instance.


Andrew, can we give this a spin in -mm?



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

end of thread, other threads:[~2007-06-01 19:33 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-05-29 12:52 [PATCH 0/5] lock contention tracking -v3 Peter Zijlstra
2007-05-29 12:52 ` [PATCH 1/5] fix raw_spinlock_t vs lockdep Peter Zijlstra
2007-05-29 12:52 ` [PATCH 2/5] lockdep: sanitise CONFIG_PROVE_LOCKING Peter Zijlstra
2007-05-29 13:21   ` Christoph Hellwig
2007-05-29 14:16     ` Ingo Molnar
2007-05-30  3:14       ` Andrew Morton
2007-05-29 12:52 ` [PATCH 3/5] lockstat: core infrastructure Peter Zijlstra
2007-05-29 20:28   ` Daniel Walker
2007-05-30 13:03     ` Peter Zijlstra
2007-05-30 13:24     ` Ingo Molnar
2007-05-30 13:40       ` Steven Rostedt
2007-05-30 13:49         ` Ingo Molnar
2007-05-30 17:06           ` Daniel Walker
2007-05-30 17:16             ` Peter Zijlstra
2007-05-30 17:25               ` Daniel Walker
2007-06-01 13:12                 ` Ingo Molnar
2007-06-01 15:26                   ` Daniel Walker
2007-06-01 15:52                     ` Peter Zijlstra
2007-06-01 16:11                       ` Daniel Walker
2007-06-01 18:30                         ` Ingo Molnar
2007-06-01 19:25                           ` Matt Mackall
2007-06-01 19:30                           ` Daniel Walker
2007-06-01 18:43                         ` Peter Zijlstra
2007-06-01 18:51                           ` Ingo Molnar
2007-06-01 19:30                           ` Daniel Walker
2007-06-01 18:19                     ` Ingo Molnar
2007-06-01 19:30                       ` Daniel Walker
2007-06-01 14:25                 ` Andi Kleen
2007-05-30 15:20       ` Daniel Walker
2007-05-30  3:43   ` Andrew Morton
2007-05-29 12:52 ` [PATCH 4/5] lockstat: human readability tweaks Peter Zijlstra
2007-05-29 12:52 ` [PATCH 5/5] lockstat: hook into spinlock_t, rwlock_t, rwsem and mutex Peter Zijlstra

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox