]> git.ozlabs.org Git - ccan/blobdiff - ccan/ntdb/test/lock-tracking.h
ntdb: next-generation trivial key-value database
[ccan] / ccan / ntdb / test / lock-tracking.h
diff --git a/ccan/ntdb/test/lock-tracking.h b/ccan/ntdb/test/lock-tracking.h
new file mode 100644 (file)
index 0000000..f2c9c44
--- /dev/null
@@ -0,0 +1,25 @@
+#ifndef LOCK_TRACKING_H
+#define LOCK_TRACKING_H
+#include <stdbool.h>
+
+/* Set this if you want a callback after fnctl unlock. */
+extern void (*unlock_callback)(int fd);
+
+/* Replacement fcntl. */
+int fcntl_with_lockcheck(int fd, int cmd, ... /* arg */ );
+
+/* Discard locking info: returns number of locks outstanding. */
+unsigned int forget_locking(void);
+
+/* Number of errors in locking. */
+extern int locking_errors;
+
+/* Suppress lock checking. */
+extern bool suppress_lockcheck;
+
+/* Make all locks non-blocking. */
+extern bool nonblocking_locks;
+
+/* Number of times we failed a lock because we made it non-blocking. */
+extern int locking_would_block;
+#endif /* LOCK_TRACKING_H */