| From: |
| Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> |
| To: |
| Josh Triplett <josh@joshtriplett.org>,
Jon Bernard <jbernard@debian.org>,
Jan Blunck <jblunck@suse.de>,
"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
Pierre Habouzit <madcoder@debian.org>,
Steven Munroe <munroesj@linux.vnet.ibm.com>,
Bert Wesarg <bert.wesarg@googlemail.com>,
Pierre-Marc Fournier <pierre-marc.fournier@polymtl.ca> |
| Subject: |
| [RELEASE] Userspace RCU 0.3.0 |
| Date: |
| Tue, 3 Nov 2009 10:02:34 -0500 |
| Message-ID: |
| <20091103150234.GA20060@Krystal> |
| Cc: |
| ltt-dev@lists.casi.polymtl.ca, rp@svcs.cs.pdx.edu,
linux-kernel@vger.kernel.org |
| Archive‑link: | |
Article |
Hi everyone,
I released userspace RCU 0.3.0, which includes a small API change for
the "deferred work" interface. After discussion with Paul, I decided to
drop the support for call_rcu() and only provide defer_rcu(), to make
sure I don't provide an API with the same name as the kernel RCU but
with different arguments and semantic. It will generate the following
linker error if used:
file.c:240: undefined reference to
`__error_call_rcu_not_implemented_please_use_defer_rcu'
Note that defer_rcu() should *not* be used in RCU read-side C.S.,
because it calls synchronize_rcu() if the queue is full. This is a major
distinction from call_rcu(). (note to self: eventually we should add
some self-check code to detect defer_rcu() nested within RCU read-side
C.S.).
I plan to eventually implement a proper call_rcu() within the userspace
RCU library. It's not, however, a short-term need for me at the moment.
Thanks,
Mathieu
--
Mathieu Desnoyers
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/