aboutsummaryrefslogtreecommitdiff
path: root/db2/db_int.h
diff options
context:
space:
mode:
Diffstat (limited to 'db2/db_int.h')
-rw-r--r--db2/db_int.h28
1 files changed, 15 insertions, 13 deletions
diff --git a/db2/db_int.h b/db2/db_int.h
index 56dfddb73f..1f6c790345 100644
--- a/db2/db_int.h
+++ b/db2/db_int.h
@@ -4,7 +4,7 @@
* Copyright (c) 1996, 1997
* Sleepycat Software. All rights reserved.
*
- * @(#)db_int.h.src 10.30 (Sleepycat) 9/23/97
+ * @(#)db_int.h.src 10.36 (Sleepycat) 10/31/97
*/
#ifndef _DB_INTERNAL_H_
@@ -12,6 +12,7 @@
#include "db.h" /* Standard DB include file. */
#include "queue.h"
+#include "os_func.h"
#include "os_ext.h"
/*******************************************************
@@ -64,12 +65,16 @@
#undef SSZA
#define SSZA(name, field) ((int)&(((name *)0)->field[0]))
+/* Macros to return per-process address, offsets based on shared regions. */
+#define R_ADDR(base, offset) ((void *)((u_int8_t *)((base)->addr) + offset))
+#define R_OFFSET(base, p) ((u_int8_t *)(p) - (u_int8_t *)(base)->addr)
+
/* Free and free-string macros that overwrite memory during debugging. */
#ifdef DEBUG
#undef FREE
#define FREE(p, len) { \
memset(p, 0xff, len); \
- free(p); \
+ __db_free(p); \
}
#undef FREES
#define FREES(p) { \
@@ -78,17 +83,17 @@
#else
#undef FREE
#define FREE(p, len) { \
- free(p); \
+ __db_free(p); \
}
#undef FREES
#define FREES(p) { \
- free(p); \
+ __db_free(p); \
}
#endif
/* Structure used to print flag values. */
typedef struct __fn {
- u_int32_t mask; /* Flag value. */
+ u_int32_t mask; /* Flag value. */
const char *name; /* Flag name. */
} FN;
@@ -163,10 +168,8 @@ typedef struct _db_mutex_t {
off_t off; /* Backing file offset. */
u_long pid; /* Lock holder: 0 or process pid. */
#endif
-#ifdef MUTEX_STATISTICS
- u_long mutex_set_wait; /* Blocking mutex: required waiting. */
- u_long mutex_set_nowait; /* Blocking mutex: without waiting. */
-#endif
+ u_int32_t mutex_set_wait; /* Granted after wait. */
+ u_int32_t mutex_set_nowait; /* Granted without waiting. */
} db_mutex_t;
#include "mutex_ext.h"
@@ -177,11 +180,10 @@ typedef struct _db_mutex_t {
/* Lock/unlock a DB thread. */
#define DB_THREAD_LOCK(dbp) \
(F_ISSET(dbp, DB_AM_THREAD) ? \
- __db_mutex_lock((db_mutex_t *)(dbp)->mutexp, -1, \
- (dbp)->dbenv == NULL ? NULL : (dbp)->dbenv->db_yield) : 0)
+ __db_mutex_lock((db_mutex_t *)(dbp)->mutexp, -1) : 0)
#define DB_THREAD_UNLOCK(dbp) \
(F_ISSET(dbp, DB_AM_THREAD) ? \
- __db_mutex_unlock((db_mutex_t *)(dbp)->mutexp, -1) : 0)
+ __db_mutex_unlock((db_mutex_t *)(dbp)->mutexp, -1) : 0)
/* Btree/recno local statistics structure. */
struct __db_bt_lstat; typedef struct __db_bt_lstat DB_BTREE_LSTAT;
@@ -260,7 +262,7 @@ typedef struct __dbpginfo {
#define IS_ZERO_LSN(LSN) ((LSN).file == 0)
/* Test if we need to log a change. */
-#define DB_LOGGING(dbp) \
+#define DB_LOGGING(dbp) \
(F_ISSET(dbp, DB_AM_LOGGING) && !F_ISSET(dbp, DB_AM_RECOVER))
#ifdef DEBUG