User: Password:
Subscribe / Log in / New account

Using RCU in userland

Using RCU in userland

Posted Jan 4, 2008 18:13 UTC (Fri) by PaulMcKenney (subscriber, #9624)
In reply to: Userland by eduardo.juan
Parent article: What is RCU, Fundamentally?

RCU has been used experimentally in user-mode code, and one benchmarking framework may be found at U. of Toronto.

In addition, I vaguely recall at least one user-level RCU implementation being posted on LKML as a programming/debugging aid. There are some others that I am unfortunately unable to release at this time.

As noted in an earlier comment, garbage-collected languages automatically provide much of the wait-for-reader functionality for free -- however, it is still necessary to correctly handle the publish-subscribe operation correctly. One way to do this in Java is to use the recently added "volatile" field specifier (no relation to "volatile" in C/C++) for the pointer that is being published. In other words, instead of using the Linux-kernel rcu_assign_pointer() and rcu_dereference() to publish and subscribe, you instead mark the pointer itself using Java's "volatile" keyword.

(Log in to post comments)

Using RCU in userland

Posted Jan 4, 2008 20:08 UTC (Fri) by eduardo.juan (guest, #47737) [Link]

Thanks Paul for answering! I'll be trying it!


Using RCU in userland

Posted Jan 5, 2008 16:26 UTC (Sat) by PaulMcKenney (subscriber, #9624) [Link]

Very cool!  Please let me know how it goes!

Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds