Userspace RCU library licensing
Mathieu Desnoyers
-May 10, 2009
+September 3, 2012
-The library part is distributed under LGPLv2.1 or later. See lgpl-2.1.txt for
-details. This applies to :
-urcu.h
-urcu.c
-urcu-static.h
-arch_x86.h
-arch_ppc.h
+* LGPLv2.1
+
+The library part is distributed under LGPLv2.1 or later. See lgpl-2.1.txt for
+license details. Refer to the individual file headers for details.
LGPL-compatible source code can statically use the library header using :
defined. It permits relinking with newer versions of the library, which is
required by the LGPL license.
+See lgpl-relicensing.txt for details.
+
+
+* MIT-style license :
+
+xchg() primitive has been rewritten from scratch starting from atomic_ops 1.2
+which has a MIT-style license that is intended to allow use in both free and
+proprietary software:
+ http://www.hpl.hp.com/research/linux/atomic_ops/LICENSING.txt
+ http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/
+
+This MIT-style license (BSD like) apply to:
+
+uatomic/gcc.h
+uatomic/unknown.h
+uatomic/generic.h
+uatomic/sparc64.h
+uatomic/arm.h
+uatomic/ppc.h
+uatomic/x86.h
+uatomic.h
+
+MIT/X11 (BSD like) license apply to:
+
+compiler.h
+arch/s390.h
+uatomic/alpha.h
+uatomic/mips.h
+uatomic/s390.h
+system.h
+
+
+* GPLv2
+
Library test code is distributed under the GPLv2 license. See gpl-2.0.txt for
-details. This applies to :
-
-urcutorture.h
-urcutorture.c
-api_x86.h
-api_ppc.h
-test_urcu.c
-test_urcu_yield.c
-test_rwlock_timing.c
-urcu-asm.c
+license details. See headers of individual files under tests/ for details.
+
+
+* GPLv3 (or later)
+
+The following build-related macro is under GPLv3 (or later):
+
+m4/ax_tls.m4