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>
