]> git.proxmox.com Git - mirror_spl-debian.git/blobdiff - module/splat/splat-internal.h
Reimplement rwlocks for Linux lock profiling/analysis.
[mirror_spl-debian.git] / module / splat / splat-internal.h
index c1c84d8d1c2623bfde28d588d3dd709554277d8b..fea78e0432ab1cc2f443fb2543f8a9b105fdd057 100644 (file)
@@ -41,6 +41,7 @@
 #include <linux/device.h>
 #include <linux/list.h>
 #include <linux/swap.h>
+#include <linux/delay.h>
 
 #include <asm/ioctls.h>
 #include <asm/uaccess.h>
@@ -195,6 +196,15 @@ typedef struct splat_info {
 #define splat_vprint(file, test, format, args...)                      \
        splat_print(file, "%*s: " format, SPLAT_NAME_SIZE, test, args)
 
+#define splat_locked_test(lock, test)                                  \
+({                                                                     \
+       int _rc_;                                                       \
+       spin_lock(lock);                                                \
+       _rc_ = (test) ? 1 : 0;                                          \
+       spin_unlock(lock);                                              \
+       _rc_;                                                           \
+})
+
 splat_subsystem_t *splat_condvar_init(void);
 splat_subsystem_t *splat_kmem_init(void);
 splat_subsystem_t *splat_mutex_init(void);