[ltt-dev] Userspace RCU API (minor changes)

Mathieu Desnoyers compudj at krystal.dyndns.org
Fri Jan 15 12:23:35 EST 2010


Hi,

I'd like to proceed to a minor API change in the next userspace RCU
release: moving from SIGURCU to SIGRCU for the signal name. This is part
of an effort to standardize the library prefix to "rcu_".  I plan to
add support for backward compatibility, so when we see that SIGURCU is
defined, then we use that value.

Also, I am planning to rename the urcu_init() constructor to rcu_init().
It should only affect the libust tracer, which need to call it
explicitly. Normal users don't have to bother with it, as it's a library
constructor.

Also, the urcu/config.h options are renamed to:

CONFIG_RCU_HAVE_FENCE
CONFIG_RCU_HAVE_FUTEX
CONFIG_RCU_SMP
CONFIG_RCU_COMPAT_ARCH
(moving from URCU -> RCU)

So an updated system installation will keep everything in sync.

I also plan to shuffle the library names a bit, but without breaking
anything. Basically, liburcu will become the "default" version, using
sys_membarrier() when available, and using liburcu-mb as a fallback.

The signal-based liburcu will be renamed from liburcu to liburcu-signal.
People previously using the signal-based "liburcu" will automatically be
moved to the "default" liburcu version.

You might want to have a look at the current git tree head to see if
everything is fine before the release. Given that I change the API
slightly, this will definitely be a 0.4.0.

Feedback is welcome,

Thanks,

Mathieu

-- 
Mathieu Desnoyers
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68




More information about the lttng-dev mailing list