Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 24 Dec 2011 20:29:16 +0400
From:      "Alexander V. Chernikov" <melifaro@FreeBSD.org>
To:        freebsd-arch@FreeBSD.org, Gleb Smirnoff <glebius@FreeBSD.org>
Subject:   Re: Use of RCU (read-copy-update)
Message-ID:  <4EF5FDDC.504@FreeBSD.org>
In-Reply-To: <4EF5FD0E.9050500@FreeBSD.org>
References:  <4EF5FD0E.9050500@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
Alexander V. Chernikov wrote:
> Hello list!

..
Sorry, glebius@ address was incorrect.

> 
> Questions related to RCU happens to be asked every several years, last
> on was on 2010, nearly 2 years have passed, so I'm asking again (to keep
> tradition).
> 
> What is RCU? RCU stands for read-copy-update locking technology that
> permits users not to lock readers at all. It works by using delayed free
>  which is triggered after all CPUs have flushed its cachelines.
> 
> It is now heavily used in various places in Linux kernel significantly
> raising performance.
> 
> More technical information:
> http://lwn.net/Articles/262464/ (general explanation from authors)
> http://www.rdrop.com/users/paulmck/RCU/ (RCU "Homepage")
> http://en.wikipedia.org/wiki/Read-copy-update
> 
> Previous discussions:
> http://lists.freebsd.org/pipermail/freebsd-arch/2004-March/001889.html
> http://lists.freebsd.org/pipermail/freebsd-arch/2006-November/005762.html
> http://lists.freebsd.org/pipermail/freebsd-current/2010-October/020320.html
> 
> 
> Main problem: Idea is patended:
> General worlds:
> http://www.groklaw.net/articlebasic.php?story=20061028211523142
> Patents in PDF:
> http://www.groklaw.net/pdf/IBM-835-Exhibit_522.pdf
> http://www.groklaw.net/pdf/IBM-835-Exhibit_523.pdf
> http://www.groklaw.net/pdf/IBM-835-Exhibit_524.pdf
> 
> 
> RCU was also one of discussed topics in SCO-Linux lawsuit ( see
> http://lwn.net/Articles/36164/ or
> http://en.wikipedia.org/wiki/SCO_v._IBM#Increased_damages_claims.2C_and_read-copy-update_claims
> )
> Currently IBM holds all RCU-related patents.
> Generally it is spoken that IBM permits using RCU for opensource or GPL
> projects, however I can't find any official link with explanation /
> conditions.
> 
> However, userland RCU project exists under LGPL: http://lttng.org/urcu
> 
> There is also (theoretially) an alternative approach implemented in
> dfBSD, lwkt: see lwkt_serialize.c and lwkt_token.c in kern/
> subdirectory: http://fxr.watson.org/fxr/source/kern/?v=DFBSD
> 
> I can't unfortunately find any finished explanation/documentation about
> how it works (on SMP) and if this works at all.
> 
> It seems we need some kind of RCU to be implemented since performance
> abyss (at least in networking) between us and Linux grows.
> 
> 
> What can we do about this?
> 1) Do nothing.
> 
> 2) Check if there a way to write and implementation non-covered by those
> patents
> 
> 3) Determine exact conditions under which IBM permits using RCU? (maybe
> ask IBM directly?)
> 
> 4) Consider the possibility of buying license from IBM (if we can
> redistribute code under BSD license after that)
> 
> 
> 
> 
> 
> 



[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.18 (FreeBSD)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk71/dwACgkQwcJ4iSZ1q2noGACaAnQjDKTiKAJ/ehvTxuUs0rTR
Pw4An2GsoaYsZEjQHntSUn+P+jRCvhMM
=lEOu
-----END PGP SIGNATURE-----

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4EF5FDDC.504>