RCU multiple entry lookup lockless
Omer Yamac
omer.yamac at ceng.metu.edu.tr
Wed Feb 22 14:45:57 CET 2023
Hi All,
I have recently been working on RCU lib and Hash Lib. I activated RCU in
the Hash library and want to observe one thing.
Here is the case:
I want to check RCU handles multiple lookups and frees just selected
elements. I realize that reporting quiescent state releases all
elements, and I cannot choose the unused ones.
Here is an example:
I filled the hash table with some data and then looked up the first five
elements in the reader thread. Assume that three are used throughout the
whole thread life, but I only need 2 of them in that little time.
If I delete these five elements in the writer, the receiver still points
to the actual data. I wanted to add some elements and free two deleted
elements that will not be used. So I report the quiescent state. Is
there a way to hold these three elements (the reader still references
that)? As I understood, I can't hold any reference to the data if I
report the quiescent state in the reader.
Thank you
--
-A. Ömer Yamaç
More information about the users
mailing list