projects
/
urcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Don't mark reader thread as being waited for if non-contended
[urcu.git]
/
urcu.c
diff --git
a/urcu.c
b/urcu.c
index a9ebf597858b063d20223b6ac48331a7a3a730db..f74304ca51fa3c2c0aed789585192b06646eb5c9 100644
(file)
--- a/
urcu.c
+++ b/
urcu.c
@@
-220,6
+220,10
@@
void wait_for_quiescent_state(void)
for (index = registry; index < registry + num_readers; index++) {
int wait_loops = 0;
for (index = registry; index < registry + num_readers; index++) {
int wait_loops = 0;
+ if (likely(!rcu_old_gp_ongoing(
+ &index->urcu_reader_status->active_readers)))
+ continue;
+
index->urcu_reader_status->gp_waiting = 1;
#ifndef HAS_INCOHERENT_CACHES
while (rcu_old_gp_ongoing(
index->urcu_reader_status->gp_waiting = 1;
#ifndef HAS_INCOHERENT_CACHES
while (rcu_old_gp_ongoing(
This page took
0.022302 seconds
and
4
git commands to generate.