projects
/
urcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
urcu-bp: move private definitions to .c file
[urcu.git]
/
urcu-qsbr.c
diff --git
a/urcu-qsbr.c
b/urcu-qsbr.c
index 8dcad33e3d6297111b4967846af177ea8f0fc5f8..a239be036d416f68259c0f586f5d0ce7248385e9 100644
(file)
--- a/
urcu-qsbr.c
+++ b/
urcu-qsbr.c
@@
-23,19
+23,21
@@
* IBM's contributions to this file may be relicensed under LGPLv2 or later.
*/
* IBM's contributions to this file may be relicensed under LGPLv2 or later.
*/
+#define _GNU_SOURCE
#include <stdio.h>
#include <pthread.h>
#include <signal.h>
#include <assert.h>
#include <stdlib.h>
#include <stdio.h>
#include <pthread.h>
#include <signal.h>
#include <assert.h>
#include <stdlib.h>
+#include <stdint.h>
#include <string.h>
#include <errno.h>
#include <poll.h>
#include <string.h>
#include <errno.h>
#include <poll.h>
-#include "urcu
-qsbr-map
.h"
+#include "urcu
/map/urcu-qsbr
.h"
#define BUILD_QSBR_LIB
#define BUILD_QSBR_LIB
-#include "urcu
-qsbr-static
.h"
+#include "urcu
/static/urcu-qsbr
.h"
/* Do not #define _LGPL_SOURCE to ensure we can emit the wrapper symbols */
#include "urcu-qsbr.h"
/* Do not #define _LGPL_SOURCE to ensure we can emit the wrapper symbols */
#include "urcu-qsbr.h"
@@
-43,13
+45,18
@@
void __attribute__((destructor)) rcu_exit(void);
static pthread_mutex_t rcu_gp_lock = PTHREAD_MUTEX_INITIALIZER;
static pthread_mutex_t rcu_gp_lock = PTHREAD_MUTEX_INITIALIZER;
-int gp_futex;
+int
32_t
gp_futex;
/*
* Global grace period counter.
*/
unsigned long rcu_gp_ctr = RCU_GP_ONLINE;
/*
* Global grace period counter.
*/
unsigned long rcu_gp_ctr = RCU_GP_ONLINE;
+/*
+ * Active attempts to check for reader Q.S. before calling futex().
+ */
+#define RCU_QS_ACTIVE_ATTEMPTS 100
+
/*
* Written to only by each individual reader. Read by both the reader and the
* writers.
/*
* Written to only by each individual reader. Read by both the reader and the
* writers.
@@
-334,3
+341,4
@@
void rcu_exit(void)
}
#include "urcu-call-rcu-impl.h"
}
#include "urcu-call-rcu-impl.h"
+#include "urcu-defer-impl.h"
This page took
0.031893 seconds
and
4
git commands to generate.