[ltt-dev] Userspace RCU library, now with autotools

Mathieu Desnoyers compudj at krystal.dyndns.org
Thu Oct 8 01:24:25 EDT 2009


Hi again,

Pierre-Marc and I managed to add support for:

- i386 (automatic detection enabling cmpxchg fall-back),
- i386, i486, i586 (using lock; addl instead of mfence),
- config option to support uniprocessor systems only
  (--disable-smp-support) (I know we could simplify a lot more things
  when this option is enabled, but let's consider this a first step),

to lib urcu. Paul tested PowerPC successfully. I tested i586. Some
testing would be welcome with i386, i486 and s390.

See: git://lttng.org/userspace-rcu.git

I might eventually get to remove the dependency on sys_futex and have a
portable library after all. ;)

Thanks,

Mathieu

* Mathieu Desnoyers (compudj at krystal.dyndns.org) wrote:
> Hello,
> 
> Pierre-Marc contributed patches moving urcu to autotools. I would
> appreciate if someone can test it on powerpc and s390 before I can
> proceed to a release.
> 
> Available at:
> 
> git://lttng.org/userspace-rcu.git
> 
> See updated README for details.
> 
> Thanks,
> 
> Mathieu
> 
> 
> * Mathieu Desnoyers (compudj at krystal.dyndns.org) wrote:
> > Hi again,
> > 
> > New update. Userspace RCU 0.2.2:
> > 
> > - Phases out rcu_publish_content() api.
> > - Adds type checking to urcu-pointer.h pointer exchange primitives.
> > 
> > Mathieu
> > 
> > P.S.: maybe I should setup a mailing list for these announcements ?
> > Comments ?
> > 
> > * Mathieu Desnoyers (compudj at krystal.dyndns.org) wrote:
> > > Hello,
> > > 
> > > Userspace RCU 0.2.1 includes:
> > > 
> > > - small header dependency fix for rculist.h.
> > > - new "liburcu-bp.so" : "Bulletproof RCU", made especially for the UST
> > >   userspace tracer. It's a library that sacrifices a bit of read-side
> > >   performance for automatically monitoring thread creation/removal. See
> > >   README for details.
> > > 
> > > Thanks,
> > > 
> > > Mathieu
> > > 
> > > * Mathieu Desnoyers (mathieu.desnoyers at polymtl.ca) wrote:
> > > > Hi,
> > > > 
> > > > Here is a 0.2 version of the urcu library. It should clarify usage of
> > > > 
> > > > rcu_cmpxchg_pointer
> > > > rcu_xchg_pointer
> > > > rcu_set_pointer
> > > > 
> > > > which are the recommended primitives to deal with pointers.
> > > > rcu_assign_pointer(ptr, new) is provided as compatibility layer with the
> > > > Linux kernel semantic, but note that its semantic for the first
> > > > parameter is IMHO odd and differs from rcu_{cmpxchg,xchg,set}_pointer.
> > > > 
> > > > Website URL:
> > > > http://lttng.org/urcu
> > > > 
> > > > Direct link to the package:
> > > > http://www.lttng.org/files/urcu/userspace-rcu-0.2.tar.gz
> > > > 
> > > > Thanks,
> > > > 
> > > > Mathieu
> > > > 
> > > > -- 
> > > > Mathieu Desnoyers
> > > > OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68
> > > 
> > > -- 
> > > Mathieu Desnoyers
> > > OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68
> > 
> > -- 
> > Mathieu Desnoyers
> > OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68
> > 
> > _______________________________________________
> > ltt-dev mailing list
> > ltt-dev at lists.casi.polymtl.ca
> > http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev
> > 
> 
> -- 
> Mathieu Desnoyers
> OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68

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




More information about the lttng-dev mailing list