While hunting a locking problem in my core scheduling series I have
added some debugging aids to spinlock handling making it easier to
find the root cause for the problem.
Making use of the already existing lock profiling and enhancing it a
little bit produces some really valuable diagnostic data e.g. when a
NMI watchdog is triggering a crash.
Changes in V3:
- rebase to current staging (after realizing that patch 4 still
applied, but resulting in patching a wrong function)
Changes in V2:
- multiple comments addressed
- added patch 5
Juergen Gross (5):
xen/spinlocks: in debug builds store cpu holding the lock
xen: add new CONFIG_DEBUG_LOCKS option
xen: print lock profile info in panic()
xen: modify lock profiling interface
xen: modify several static locks to unique names
tools/libxc/xc_misc.c | 1 +
tools/misc/xenlockprof.c | 17 ++---
xen/Kconfig.debug | 10 ++-
xen/arch/arm/xen.lds.S | 13 ++--
xen/arch/x86/domain.c | 2 +-
xen/arch/x86/irq.c | 6 +-
xen/arch/x86/time.c | 6 +-
xen/arch/x86/xen.lds.S | 13 ++--
xen/common/domain.c | 4 +-
xen/common/keyhandler.c | 8 +--
xen/common/perfc.c | 6 +-
xen/common/spinlock.c | 161 ++++++++++++++++++++++++++++++--------------
xen/common/sysctl.c | 2 +-
xen/common/trace.c | 6 +-
xen/drivers/char/console.c | 10 +--
xen/include/public/sysctl.h | 11 ++-
xen/include/xen/spinlock.h | 60 ++++++++++-------
17 files changed, 206 insertions(+), 130 deletions(-)
--
2.16.4
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel