[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen staging] xen: add new CONFIG_DEBUG_LOCKS option



commit cf063792b8194026f7a422fc8bea1462ee26c46d
Author:     Juergen Gross <jgross@xxxxxxxx>
AuthorDate: Tue Sep 17 16:08:03 2019 +0200
Commit:     Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Tue Sep 17 16:08:03 2019 +0200

    xen: add new CONFIG_DEBUG_LOCKS option
    
    Instead of enabling debugging for debug builds only add a dedicated
    Kconfig option for that purpose which defaults to DEBUG.
    
    Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
    Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
---
 xen/Kconfig.debug          | 7 +++++++
 xen/common/spinlock.c      | 4 ++--
 xen/include/xen/spinlock.h | 2 +-
 3 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/xen/Kconfig.debug b/xen/Kconfig.debug
index e10e314e25..1faaa3ba6a 100644
--- a/xen/Kconfig.debug
+++ b/xen/Kconfig.debug
@@ -51,6 +51,13 @@ config LOCK_PROFILE
          You can use serial console to print (and reset) using 'l' and 'L'
          respectively, or the 'xenlockprof' tool.
 
+config DEBUG_LOCKS
+       bool "Lock debugging"
+       default DEBUG
+       ---help---
+         Enable debugging features of lock handling.  Some additional
+         checks will be performed when acquiring and releasing locks.
+
 config PERF_COUNTERS
        bool "Performance Counters"
        ---help---
diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
index 8b27b11b55..6ca1b38f84 100644
--- a/xen/common/spinlock.c
+++ b/xen/common/spinlock.c
@@ -9,7 +9,7 @@
 #include <asm/processor.h>
 #include <asm/atomic.h>
 
-#ifndef NDEBUG
+#ifdef CONFIG_DEBUG_LOCKS
 
 static atomic_t spin_debug __read_mostly = ATOMIC_INIT(0);
 
@@ -99,7 +99,7 @@ void spin_debug_disable(void)
     atomic_dec(&spin_debug);
 }
 
-#else /* defined(NDEBUG) */
+#else /* CONFIG_DEBUG_LOCKS */
 
 #define check_lock(l) ((void)0)
 #define check_barrier(l) ((void)0)
diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index df37550f02..79b582e05d 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -7,7 +7,7 @@
 
 #define SPINLOCK_CPU_BITS  12
 
-#ifndef NDEBUG
+#ifdef CONFIG_DEBUG_LOCKS
 union lock_debug {
     uint16_t val;
 #define LOCK_DEBUG_INITVAL 0xffff
--
generated by git-patchbot for /home/xen/git/xen.git#staging

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/xen-changelog

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.