projects
/
urcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update tests api*.h
[urcu.git]
/
urcu.c
diff --git
a/urcu.c
b/urcu.c
index e70980f5b93e259f5506e3fb7e1b602708aa63b3..7fdb1a6a675692cf8e25c39bfd6dde1f1e68f82a 100644
(file)
--- a/
urcu.c
+++ b/
urcu.c
@@
-216,7
+216,7
@@
void wait_for_quiescent_state(void)
{
LIST_HEAD(qsreaders);
int wait_loops = 0;
{
LIST_HEAD(qsreaders);
int wait_loops = 0;
- struct urcu_reader *index;
+ struct urcu_reader *index
, *tmp
;
if (list_empty(®istry))
return;
if (list_empty(®istry))
return;
@@
-231,7
+231,7
@@
void wait_for_quiescent_state(void)
force_mb_all_threads();
}
force_mb_all_threads();
}
- list_for_each_entry
(index
, ®istry, head) {
+ list_for_each_entry
_safe(index, tmp
, ®istry, head) {
if (!rcu_old_gp_ongoing(&index->ctr))
list_move(&index->head, &qsreaders);
}
if (!rcu_old_gp_ongoing(&index->ctr))
list_move(&index->head, &qsreaders);
}
@@
-278,7
+278,7
@@
void wait_for_quiescent_state(void)
#endif /* #else #ifndef HAS_INCOHERENT_CACHES */
}
/* put back the reader list in the registry */
#endif /* #else #ifndef HAS_INCOHERENT_CACHES */
}
/* put back the reader list in the registry */
- list_
mov
e(&qsreaders, ®istry);
+ list_
splic
e(&qsreaders, ®istry);
}
void synchronize_rcu(void)
}
void synchronize_rcu(void)
This page took
0.023109 seconds
and
4
git commands to generate.