projects
/
urcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
signal-based urcu: rename force_mb_all_threads -> force_mb_all_readers
[urcu.git]
/
urcu.c
diff --git
a/urcu.c
b/urcu.c
index c4b2b428787fbc519031f2c696773cd3300767bb..3132e59277bf782f9e2e03cb3b0f862981b80a2a 100644
(file)
--- a/
urcu.c
+++ b/
urcu.c
@@
-126,7
+126,7
@@
static void force_mb_single_thread(struct rcu_reader *index)
}
#endif //0
}
#endif //0
-static void force_mb_all_
thread
s(void)
+static void force_mb_all_
reader
s(void)
{
smp_mb();
}
{
smp_mb();
}
@@
-156,7
+156,7
@@
static void force_mb_single_thread(struct rcu_reader *index)
}
#endif //0
}
#endif //0
-static void force_mb_all_
thread
s(void)
+static void force_mb_all_
reader
s(void)
{
struct rcu_reader *index;
{
struct rcu_reader *index;
@@
-206,7
+206,7
@@
static void force_mb_all_threads(void)
static void wait_gp(void)
{
/* Read reader_gp before read futex */
static void wait_gp(void)
{
/* Read reader_gp before read futex */
- force_mb_all_
thread
s();
+ force_mb_all_
reader
s();
if (uatomic_read(&gp_futex) == -1)
futex_async(&gp_futex, FUTEX_WAIT, -1,
NULL, NULL, 0);
if (uatomic_read(&gp_futex) == -1)
futex_async(&gp_futex, FUTEX_WAIT, -1,
NULL, NULL, 0);
@@
-228,7
+228,7
@@
void wait_for_quiescent_state(void)
if (wait_loops == RCU_QS_ACTIVE_ATTEMPTS) {
uatomic_dec(&gp_futex);
/* Write futex before read reader_gp */
if (wait_loops == RCU_QS_ACTIVE_ATTEMPTS) {
uatomic_dec(&gp_futex);
/* Write futex before read reader_gp */
- force_mb_all_
thread
s();
+ force_mb_all_
reader
s();
}
list_for_each_entry_safe(index, tmp, ®istry, head) {
}
list_for_each_entry_safe(index, tmp, ®istry, head) {
@@
-240,7
+240,7
@@
void wait_for_quiescent_state(void)
if (list_empty(®istry)) {
if (wait_loops == RCU_QS_ACTIVE_ATTEMPTS) {
/* Read reader_gp before write futex */
if (list_empty(®istry)) {
if (wait_loops == RCU_QS_ACTIVE_ATTEMPTS) {
/* Read reader_gp before write futex */
- force_mb_all_
thread
s();
+ force_mb_all_
reader
s();
uatomic_set(&gp_futex, 0);
}
break;
uatomic_set(&gp_futex, 0);
}
break;
@@
-258,7
+258,7
@@
void wait_for_quiescent_state(void)
if (list_empty(®istry)) {
if (wait_loops == RCU_QS_ACTIVE_ATTEMPTS) {
/* Read reader_gp before write futex */
if (list_empty(®istry)) {
if (wait_loops == RCU_QS_ACTIVE_ATTEMPTS) {
/* Read reader_gp before write futex */
- force_mb_all_
thread
s();
+ force_mb_all_
reader
s();
uatomic_set(&gp_futex, 0);
}
break;
uatomic_set(&gp_futex, 0);
}
break;
@@
-268,7
+268,7
@@
void wait_for_quiescent_state(void)
wait_gp();
break; /* only escape switch */
case KICK_READER_LOOPS:
wait_gp();
break; /* only escape switch */
case KICK_READER_LOOPS:
- force_mb_all_
thread
s();
+ force_mb_all_
reader
s();
wait_loops = 0;
break; /* only escape switch */
default:
wait_loops = 0;
break; /* only escape switch */
default:
@@
-289,7
+289,7
@@
void synchronize_rcu(void)
* where new ptr points to. Must be done within internal_rcu_lock
* because it iterates on reader threads.*/
/* Write new ptr before changing the qparity */
* where new ptr points to. Must be done within internal_rcu_lock
* because it iterates on reader threads.*/
/* Write new ptr before changing the qparity */
- force_mb_all_
thread
s();
+ force_mb_all_
reader
s();
switch_next_rcu_qparity(); /* 0 -> 1 */
switch_next_rcu_qparity(); /* 0 -> 1 */
@@
-353,7
+353,7
@@
void synchronize_rcu(void)
/* Finish waiting for reader threads before letting the old ptr being
* freed. Must be done within internal_rcu_lock because it iterates on
* reader threads. */
/* Finish waiting for reader threads before letting the old ptr being
* freed. Must be done within internal_rcu_lock because it iterates on
* reader threads. */
- force_mb_all_
thread
s();
+ force_mb_all_
reader
s();
internal_rcu_unlock();
}
internal_rcu_unlock();
}
This page took
0.024512 seconds
and
4
git commands to generate.