|
|
Subscribe / Log in / New account

Userspace RCU 0.3.0

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/


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