[lttng-dev] Can liburcu protect multiple independent shared resource?

Mathieu Desnoyers mathieu.desnoyers at efficios.com
Tue Apr 10 13:10:46 EDT 2018


Hi, 

There is no "write_lock" in RCU per se. The update side uses a synchronize_rcu() instead. 

Yes, there can be interference between multiple shared resources using the same liburcu 
flavor. Very long read-side critical sections can delay completion of synchronize_rcu. 

I've done prototypes of liburcu flavors that have a "domain" structure, thus allowing each 
liburcu users to have their own grace period domain, but never had time to complete it and 
get it upstream. 

Thanks, 

Mathieu 

----- On Apr 9, 2018, at 2:32 AM, 志昌 余 <yuzhichang_scl at hotmail.com> wrote: 

> According to [ https://github.com/urcu/userspace-rcu/blob/master/doc/rcu-api.md
> | https://github.com/urcu/userspace-rcu/blob/master/doc/rcu-api.md ] , none
> librcu API take the resource address.
> If there're multiple independent shared resource, seems there's i nterference
> between read_lock of resource A and write_lock of resource B.

> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

-- 
Mathieu Desnoyers 
EfficiOS Inc. 
http://www.efficios.com 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.lttng.org/pipermail/lttng-dev/attachments/20180410/7f04db43/attachment.html>


More information about the lttng-dev mailing list