Commit 9d0b6c65 authored by Maged Michael's avatar Maged Michael Committed by Facebook Github Bot

hazptr: cleanup checks for newly retired objects

Summary: Cleanup checks if the current thread has retired objects during bulk reclaim. It does so by flushing the thread local set of retired objects and checking if domain's list of retired objects.

Reviewed By: djwatson

Differential Revision: D8503159

fbshipit-source-id: 59ddd29d8ae1429b62b5bc9511b84e4c9e7128f2
parent 80d0a7ab
......@@ -273,7 +273,12 @@ class hazptr_domain {
}
obj = next;
}
bool done = (children.count() == 0);
#if FOLLY_HAZPTR_THR_LOCAL
if (!shutdown_) {
hazptr_priv_tls<Atom>().push_all_to_domain();
}
#endif
bool done = ((children.count() == 0) && (retired() == nullptr));
matched.splice(children);
if (matched.count() > 0) {
push_retired(matched, false /* don't call bulk_reclaim recursively */);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment