linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RELEASE] Userspace RCU library (liburcu) 0.1
@ 2009-09-29 21:09 Mathieu Desnoyers
  2009-10-01 13:56 ` [RELEASE] Userspace RCU library (liburcu) 0.2 Mathieu Desnoyers
  0 siblings, 1 reply; 6+ messages in thread
From: Mathieu Desnoyers @ 2009-09-29 21:09 UTC (permalink / raw)
  To: Josh Triplett, Jon Bernard, Jan Blunck, Paul E. McKenney,
	Pierre Habouzit, Steven Munroe, Bert Wesarg
  Cc: linux-kernel, rp, ltt-dev

Hi everyone,

Due to the large interest generated by the userspace RCU library, I am
releasing a 0.1 version. It should work on x86 32/64 and PowerPC.

Website URL:
http://lttng.org/urcu

What is userspace RCU: liburcu is a LGPLv2.1 userspace RCU
(read-copy-update) library. This data synchronization library provides
read-side access which scales linearly with the number of cores. It does
so by allowing multiples copies of a given data structure to live at the
same time, and by monitoring the data structure accesses to detect grace
periods after which memory reclamation is possible.

Direct link to the package:
http://www.lttng.org/files/urcu/userspace-rcu-0.1.tar.gz

There is partial support for s390 at the moment, but some atomic
primitives are currently missing for this architecture, so don't expect
the s390 architecture to build in this version.

Please let me know if you face any problems using it. As always,
feedback and patches are very welcome. See the packaged README file for
details.

Thanks,

Mathieu

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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [RELEASE] Userspace RCU library (liburcu) 0.2
  2009-09-29 21:09 [RELEASE] Userspace RCU library (liburcu) 0.1 Mathieu Desnoyers
@ 2009-10-01 13:56 ` Mathieu Desnoyers
  2009-10-02 17:05   ` [RELEASE] Userspace RCU library (liburcu) 0.2.1 Mathieu Desnoyers
  0 siblings, 1 reply; 6+ messages in thread
From: Mathieu Desnoyers @ 2009-10-01 13:56 UTC (permalink / raw)
  To: Josh Triplett, Jon Bernard, Jan Blunck, Paul E. McKenney,
	Pierre Habouzit, Steven Munroe, Bert Wesarg, Pierre-Marc Fournier
  Cc: linux-kernel, rp, ltt-dev

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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [RELEASE] Userspace RCU library (liburcu) 0.2.1
  2009-10-01 13:56 ` [RELEASE] Userspace RCU library (liburcu) 0.2 Mathieu Desnoyers
@ 2009-10-02 17:05   ` Mathieu Desnoyers
  2009-10-05 22:08     ` [RELEASE] Userspace RCU library (liburcu) 0.2.2 Mathieu Desnoyers
  0 siblings, 1 reply; 6+ messages in thread
From: Mathieu Desnoyers @ 2009-10-02 17:05 UTC (permalink / raw)
  To: Josh Triplett, Jon Bernard, Jan Blunck, Paul E. McKenney,
	Pierre Habouzit, Steven Munroe, Bert Wesarg, Pierre-Marc Fournier
  Cc: linux-kernel, rp, ltt-dev

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@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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [RELEASE] Userspace RCU library (liburcu) 0.2.2
  2009-10-02 17:05   ` [RELEASE] Userspace RCU library (liburcu) 0.2.1 Mathieu Desnoyers
@ 2009-10-05 22:08     ` Mathieu Desnoyers
  2009-10-07 21:50       ` Userspace RCU library, now with autotools Mathieu Desnoyers
  0 siblings, 1 reply; 6+ messages in thread
From: Mathieu Desnoyers @ 2009-10-05 22:08 UTC (permalink / raw)
  To: Josh Triplett, Jon Bernard, Jan Blunck, Paul E. McKenney,
	Pierre Habouzit, Steven Munroe, Bert Wesarg, Pierre-Marc Fournier
  Cc: linux-kernel, rp, ltt-dev

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@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@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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Userspace RCU library, now with autotools
  2009-10-05 22:08     ` [RELEASE] Userspace RCU library (liburcu) 0.2.2 Mathieu Desnoyers
@ 2009-10-07 21:50       ` Mathieu Desnoyers
  2009-10-08  5:24         ` Mathieu Desnoyers
  0 siblings, 1 reply; 6+ messages in thread
From: Mathieu Desnoyers @ 2009-10-07 21:50 UTC (permalink / raw)
  To: Josh Triplett, Jon Bernard, Jan Blunck, Paul E. McKenney,
	Pierre Habouzit, Steven Munroe, Bert Wesarg, Pierre-Marc Fournier
  Cc: ltt-dev, rp, linux-kernel

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@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@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@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@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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Userspace RCU library, now with autotools
  2009-10-07 21:50       ` Userspace RCU library, now with autotools Mathieu Desnoyers
@ 2009-10-08  5:24         ` Mathieu Desnoyers
  0 siblings, 0 replies; 6+ messages in thread
From: Mathieu Desnoyers @ 2009-10-08  5:24 UTC (permalink / raw)
  To: Josh Triplett, Jon Bernard, Jan Blunck, Paul E. McKenney,
	Pierre Habouzit, Steven Munroe, Bert Wesarg, Pierre-Marc Fournier
  Cc: ltt-dev, rp, linux-kernel

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@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@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@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@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@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

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2009-10-08  5:25 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-09-29 21:09 [RELEASE] Userspace RCU library (liburcu) 0.1 Mathieu Desnoyers
2009-10-01 13:56 ` [RELEASE] Userspace RCU library (liburcu) 0.2 Mathieu Desnoyers
2009-10-02 17:05   ` [RELEASE] Userspace RCU library (liburcu) 0.2.1 Mathieu Desnoyers
2009-10-05 22:08     ` [RELEASE] Userspace RCU library (liburcu) 0.2.2 Mathieu Desnoyers
2009-10-07 21:50       ` Userspace RCU library, now with autotools Mathieu Desnoyers
2009-10-08  5:24         ` Mathieu Desnoyers

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).