urcu.git
12 years agorculfhash: add likely/unlikely annotation
Mathieu Desnoyers [Tue, 12 Jul 2011 19:59:00 +0000 (15:59 -0400)] 
rculfhash: add likely/unlikely annotation

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: document add lock-freedom
Mathieu Desnoyers [Tue, 12 Jul 2011 16:15:06 +0000 (12:15 -0400)] 
rculfhash: document add lock-freedom

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: document node alignment
Mathieu Desnoyers [Tue, 12 Jul 2011 15:59:00 +0000 (11:59 -0400)] 
rculfhash: document node alignment

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: document algorithms
Mathieu Desnoyers [Tue, 12 Jul 2011 15:19:35 +0000 (11:19 -0400)] 
rculfhash: document algorithms

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash test: make teardown more verbose and faster
Mathieu Desnoyers [Mon, 11 Jul 2011 21:56:21 +0000 (17:56 -0400)] 
rculfhash test: make teardown more verbose and faster

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: print resize length (useful as non-debug for now)
Mathieu Desnoyers [Mon, 11 Jul 2011 21:34:05 +0000 (17:34 -0400)] 
rculfhash: print resize length (useful as non-debug for now)

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: tolerate longer chain length
Mathieu Desnoyers [Mon, 11 Jul 2011 21:32:55 +0000 (17:32 -0400)] 
rculfhash: tolerate longer chain length

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: diminish index table memory consumption
Mathieu Desnoyers [Mon, 11 Jul 2011 21:14:08 +0000 (17:14 -0400)] 
rculfhash: diminish index table memory consumption

- introduce log2 rcu table for resize.
- pull the dummy nodes into invariant per-log2-level tables.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: add missing clear flag in gc
Mathieu Desnoyers [Sat, 9 Jul 2011 20:43:26 +0000 (16:43 -0400)] 
rculfhash: add missing clear flag in gc

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: document flags
Mathieu Desnoyers [Sat, 9 Jul 2011 20:34:29 +0000 (16:34 -0400)] 
rculfhash: document flags

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: merge dummy into next ptr
Mathieu Desnoyers [Sat, 9 Jul 2011 20:22:32 +0000 (16:22 -0400)] 
rculfhash: merge dummy into next ptr

part 2: rely on the flag for check.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: merge dummy flag into next pointer
Mathieu Desnoyers [Sat, 9 Jul 2011 19:28:38 +0000 (15:28 -0400)] 
rculfhash: merge dummy flag into next pointer

step 1: set flag

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: Add clear flag
Mathieu Desnoyers [Sat, 9 Jul 2011 19:12:28 +0000 (15:12 -0400)] 
rculfhash: Add clear flag

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: introduce REMOVED_FLAG and FLAG_MASK
Mathieu Desnoyers [Sat, 9 Jul 2011 19:04:40 +0000 (15:04 -0400)] 
rculfhash: introduce REMOVED_FLAG and FLAG_MASK

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: shrink size of dummy node
Mathieu Desnoyers [Sat, 9 Jul 2011 19:02:26 +0000 (15:02 -0400)] 
rculfhash: shrink size of dummy node

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: wait for call_rcu quiescence before destroy
Mathieu Desnoyers [Sat, 9 Jul 2011 17:28:01 +0000 (13:28 -0400)] 
rculfhash: wait for call_rcu quiescence before destroy

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: add c++ ifdef
Mathieu Desnoyers [Thu, 7 Jul 2011 16:27:19 +0000 (12:27 -0400)] 
rculfhash: add c++ ifdef

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash test: add options
Mathieu Desnoyers [Thu, 7 Jul 2011 16:19:14 +0000 (12:19 -0400)] 
rculfhash test: add options

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash test: use per-cpu call-rcu threads
Mathieu Desnoyers [Thu, 7 Jul 2011 15:49:09 +0000 (11:49 -0400)] 
rculfhash test: use per-cpu call-rcu threads

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: update add_unique api
Mathieu Desnoyers [Thu, 7 Jul 2011 15:48:34 +0000 (11:48 -0400)] 
rculfhash: update add_unique api

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: fix add unique
Mathieu Desnoyers [Thu, 7 Jul 2011 15:13:06 +0000 (11:13 -0400)] 
rculfhash: fix add unique

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash test: increases random pool size
Mathieu Desnoyers [Thu, 7 Jul 2011 14:43:51 +0000 (10:43 -0400)] 
rculfhash test: increases random pool size

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: remove hash from nodes
Mathieu Desnoyers [Thu, 7 Jul 2011 14:36:39 +0000 (10:36 -0400)] 
rculfhash: remove hash from nodes

Shrink node size, can get it quickly by reversing the reverse_hash.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: change order of node fields for locality
Mathieu Desnoyers [Thu, 7 Jul 2011 14:24:00 +0000 (10:24 -0400)] 
rculfhash: change order of node fields for locality

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: merge node gc into add loop
Mathieu Desnoyers [Thu, 7 Jul 2011 13:48:44 +0000 (09:48 -0400)] 
rculfhash: merge node gc into add loop

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: cleanup
Mathieu Desnoyers [Thu, 7 Jul 2011 13:43:50 +0000 (09:43 -0400)] 
rculfhash: cleanup

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash test: add nr_leaked count
Mathieu Desnoyers [Thu, 7 Jul 2011 13:20:39 +0000 (09:20 -0400)] 
rculfhash test: add nr_leaked count

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: garbage collection scheme
Mathieu Desnoyers [Thu, 7 Jul 2011 13:09:04 +0000 (09:09 -0400)] 
rculfhash: garbage collection scheme

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: flip order of removal
Mathieu Desnoyers [Wed, 6 Jul 2011 20:05:48 +0000 (16:05 -0400)] 
rculfhash: flip order of removal

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: Remove "value" pointer
Mathieu Desnoyers [Wed, 6 Jul 2011 19:00:14 +0000 (15:00 -0400)] 
rculfhash: Remove "value" pointer

Use container_of instead.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash test: add missing free
Mathieu Desnoyers [Wed, 6 Jul 2011 17:37:19 +0000 (13:37 -0400)] 
rculfhash test: add missing free

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: add unique
Mathieu Desnoyers [Wed, 6 Jul 2011 15:19:08 +0000 (11:19 -0400)] 
rculfhash: add unique

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate resize thresholds
Mathieu Desnoyers [Wed, 6 Jul 2011 14:50:09 +0000 (10:50 -0400)] 
Update resize thresholds

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash updates
Mathieu Desnoyers [Wed, 6 Jul 2011 14:45:04 +0000 (10:45 -0400)] 
rculfhash updates

- Add and remove now completely lock-free (no busy-wait loop).
- Add resize_initiated flag to skip multiple call_rcu calls.
- Identical reverse hashes now only count as one chain entry in the
  chain length accounting. We cannot split identical hashes by growing
  the hash table anyway, so it was leading to large tables uselessly
  when we had a lot of similar hashes.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoComment list behavior wrt lock-freedom
Mathieu Desnoyers [Wed, 6 Jul 2011 05:07:33 +0000 (01:07 -0400)] 
Comment list behavior wrt lock-freedom

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix reverse hash comparison
Mathieu Desnoyers [Wed, 6 Jul 2011 04:52:07 +0000 (00:52 -0400)] 
Fix reverse hash comparison

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: use threshold and target
Mathieu Desnoyers [Wed, 6 Jul 2011 04:44:43 +0000 (00:44 -0400)] 
rculfhash: use threshold and target

Accept to target bucket len greater than 1 to diminish the memory
consumption without too much performance impact.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: implement real hash function
Mathieu Desnoyers [Wed, 6 Jul 2011 03:47:32 +0000 (23:47 -0400)] 
rculfhash: implement real hash function

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfhash: fix resize (use log2 of chain length)
Mathieu Desnoyers [Wed, 6 Jul 2011 02:43:17 +0000 (22:43 -0400)] 
rculfhash: fix resize (use log2 of chain length)

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoMerge remote branch 'origin/urcu/ht' into urcu/ht
Mathieu Desnoyers [Wed, 6 Jul 2011 01:02:11 +0000 (21:02 -0400)] 
Merge remote branch 'origin/urcu/ht' into urcu/ht

Conflicts:
urcu-ht.h

12 years agorcu lf hash table runtime fixes
Mathieu Desnoyers [Wed, 6 Jul 2011 01:00:42 +0000 (21:00 -0400)] 
rcu lf hash table runtime fixes

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agosplit-ordered hash table
Mathieu Desnoyers [Tue, 5 Jul 2011 23:35:08 +0000 (19:35 -0400)] 
split-ordered hash table

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRename urcu-ht to rculfhash
Mathieu Desnoyers [Sat, 2 Jul 2011 15:31:09 +0000 (11:31 -0400)] 
Rename urcu-ht to rculfhash

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoMerge branch 'master' into urcu/ht
Mathieu Desnoyers [Sat, 2 Jul 2011 15:24:18 +0000 (11:24 -0400)] 
Merge branch 'master' into urcu/ht

Conflicts:
Makefile.inc
tests/Makefile.inc
urcu-defer.h

12 years agorculfqueue: provide locklessness by allowing multiple dummy nodes
Mathieu Desnoyers [Fri, 1 Jul 2011 23:51:48 +0000 (19:51 -0400)] 
rculfqueue: provide locklessness by allowing multiple dummy nodes

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorcu lfqueue: make dequeue lockless by helping out other dequeuers
Mathieu Desnoyers [Fri, 1 Jul 2011 22:50:15 +0000 (18:50 -0400)] 
rcu lfqueue: make dequeue lockless by helping out other dequeuers

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfqueue: Document dummy pointer value access
Mathieu Desnoyers [Fri, 1 Jul 2011 21:42:48 +0000 (17:42 -0400)] 
rculfqueue: Document dummy pointer value access

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfqueue: Keep a reference to the current dummy node rather than using low bit
Mathieu Desnoyers [Fri, 1 Jul 2011 21:35:07 +0000 (17:35 -0400)] 
rculfqueue: Keep a reference to the current dummy node rather than using low bit

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfqueue: only one dummy node is needed
Mathieu Desnoyers [Fri, 1 Jul 2011 21:24:24 +0000 (17:24 -0400)] 
rculfqueue: only one dummy node is needed

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfstack: update comment
Mathieu Desnoyers [Fri, 1 Jul 2011 21:23:39 +0000 (17:23 -0400)] 
rculfstack: update comment

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRCU lf queue: Add assert for memory allocation
Mathieu Desnoyers [Fri, 1 Jul 2011 21:06:16 +0000 (17:06 -0400)] 
RCU lf queue: Add assert for memory allocation

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfstack: header implementation should be defined as static inline
Mathieu Desnoyers [Fri, 1 Jul 2011 20:17:55 +0000 (16:17 -0400)] 
rculfstack: header implementation should be defined as static inline

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agowfstack: header implementation should be defined as static inline
Mathieu Desnoyers [Fri, 1 Jul 2011 20:17:14 +0000 (16:17 -0400)] 
wfstack: header implementation should be defined as static inline

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRCU lfqueue: Now works without reference counting (API change)
Mathieu Desnoyers [Fri, 1 Jul 2011 20:34:38 +0000 (16:34 -0400)] 
RCU lfqueue: Now works without reference counting (API change)

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorculfstack: header implementation should be defined as static inline
Mathieu Desnoyers [Fri, 1 Jul 2011 20:17:55 +0000 (16:17 -0400)] 
rculfstack: header implementation should be defined as static inline

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agowfstack: header implementation should be defined as static inline
Mathieu Desnoyers [Fri, 1 Jul 2011 20:17:14 +0000 (16:17 -0400)] 
wfstack: header implementation should be defined as static inline

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agourcu tests: hold mutex across use of custom allocator
Mathieu Desnoyers [Thu, 30 Jun 2011 14:45:33 +0000 (10:45 -0400)] 
urcu tests: hold mutex across use of custom allocator

A thread preempted for a long period of time could race, when scheduled
again, with another thread that would have been allocating/freeing
entries (thus wrapping-around the available buffer), which would trigger
this race only when overcommitting the number of threads compared to the
number of available CPUs.

Taking the mutex across alloc and free to fix this.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agourcu-bp: mremap wrapper fix
Mathieu Desnoyers [Wed, 29 Jun 2011 20:39:19 +0000 (16:39 -0400)] 
urcu-bp: mremap wrapper fix

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agourcu-bp: add mremap wrapper for non-linux systems
Mathieu Desnoyers [Wed, 29 Jun 2011 20:38:06 +0000 (16:38 -0400)] 
urcu-bp: add mremap wrapper for non-linux systems

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agourcu-bp: don't copy old region upon mremap
Mathieu Desnoyers [Wed, 29 Jun 2011 20:31:16 +0000 (16:31 -0400)] 
urcu-bp: don't copy old region upon mremap

mremap keeps the same virtual pages for the old/new mappings. So
explicitly copying from the old mapping is not needed, and probably
buggy, since the old mapping might have been unmapped.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoapi.h: fix type warning
Mathieu Desnoyers [Wed, 29 Jun 2011 18:35:08 +0000 (14:35 -0400)] 
api.h: fix type warning

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agonon-linux system membarrier fallback update
Mathieu Desnoyers [Wed, 29 Jun 2011 18:20:31 +0000 (14:20 -0400)] 
non-linux system membarrier fallback update

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agopthread_self should be cast to unsigned long
Mathieu Desnoyers [Wed, 29 Jun 2011 18:12:23 +0000 (14:12 -0400)] 
pthread_self should be cast to unsigned long

Used as part of the random seed along with time().

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd MAP_ANONYMOUS mapping to MAP_ANON for BSD build
Mathieu Desnoyers [Wed, 29 Jun 2011 17:47:28 +0000 (13:47 -0400)] 
Add MAP_ANONYMOUS mapping to MAP_ANON for BSD build

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agotests: only include syscall.h on linux systems
Mathieu Desnoyers [Wed, 29 Jun 2011 17:43:22 +0000 (13:43 -0400)] 
tests: only include syscall.h on linux systems

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agourcu-bp, urcu-qsbr: remove unneeded syscall.h include
Mathieu Desnoyers [Wed, 29 Jun 2011 17:34:48 +0000 (13:34 -0400)] 
urcu-bp, urcu-qsbr: remove unneeded syscall.h include

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agourcu-defer: remove unneeded syscall.h include
Mathieu Desnoyers [Wed, 29 Jun 2011 17:30:42 +0000 (13:30 -0400)] 
urcu-defer: remove unneeded syscall.h include

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agocall_rcu: per_cpu_call_rcu_data should be non-const
Mathieu Desnoyers [Wed, 29 Jun 2011 17:29:38 +0000 (13:29 -0400)] 
call_rcu: per_cpu_call_rcu_data should be non-const

On FreeBSD:

In file included from urcu.c:438:
urcu-call-rcu-impl.h: In function 'get_cpu_call_rcu_data_mb':
urcu-call-rcu-impl.h:325: warning: return discards qualifiers from pointer target type

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate README info about gcc compability
Mathieu Desnoyers [Wed, 29 Jun 2011 17:02:45 +0000 (13:02 -0400)] 
Update README info about gcc compability

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix urcu-call-rcu-impl.h missing call_rcu_wait for non-linux systems
Mathieu Desnoyers [Wed, 29 Jun 2011 16:51:41 +0000 (12:51 -0400)] 
Fix urcu-call-rcu-impl.h missing call_rcu_wait for non-linux systems

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agocompat_futex_async: fix missing return
Mathieu Desnoyers [Wed, 29 Jun 2011 16:49:35 +0000 (12:49 -0400)] 
compat_futex_async: fix missing return

compat_futex.c: In function `compat_futex_async':
compat_futex.c:114: warning: control reaches end of non-void function

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoCheck for __linux__ before including syscall.h
Mathieu Desnoyers [Wed, 29 Jun 2011 16:46:52 +0000 (12:46 -0400)] 
Check for __linux__ before including syscall.h

Reported-by: Jean-François Brousseau <jfb@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRemove unused local variables from compat_futex_async
Mathieu Desnoyers [Wed, 29 Jun 2011 16:30:30 +0000 (12:30 -0400)] 
Remove unused local variables from compat_futex_async

Reported-by: Jean-François Brousseau <jfb@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRemove unneeded syscall.h include from urcu-call-rcu-impl.h
Mathieu Desnoyers [Wed, 29 Jun 2011 16:29:39 +0000 (12:29 -0400)] 
Remove unneeded syscall.h include from urcu-call-rcu-impl.h

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd ChangeLog file to Makefile.am
Mathieu Desnoyers [Mon, 27 Jun 2011 21:52:41 +0000 (17:52 -0400)] 
Add ChangeLog file to Makefile.am

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd changelog, update version to 0.6.3 v0.6.3
Mathieu Desnoyers [Mon, 27 Jun 2011 21:49:38 +0000 (17:49 -0400)] 
Add changelog, update version to 0.6.3

12 years agouatomic: fix warning about unused variable
Mathieu Desnoyers [Mon, 27 Jun 2011 21:07:25 +0000 (17:07 -0400)] 
uatomic: fix warning about unused variable

Fix:

compat_arch_x86.c: In function '_compat_uatomic_set':
compat_arch_x86.c:104:16: warning: variable 'result' set but not used [-Wunused-but-set-variable]

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agouatomic: fix i386 support
Mathieu Desnoyers [Mon, 27 Jun 2011 20:54:56 +0000 (16:54 -0400)] 
uatomic: fix i386 support

Fix:

* Incorrect prototype for uatomic_and and uatomic_or in i386
  compatibility code.
* Missing $(COMPAT) code inclusion in wfq/lfq tests.
* Silence gcc warnings about compat code (branch volountarily causing a
  linker error, which can never return).

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate version to 0.6.2 v0.6.2
Mathieu Desnoyers [Tue, 14 Jun 2011 13:30:19 +0000 (09:30 -0400)] 
Update version to 0.6.2

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agouatomic generic: map uatomic_and/or to correct symbols
Mathieu Desnoyers [Tue, 14 Jun 2011 13:15:20 +0000 (09:15 -0400)] 
uatomic generic: map uatomic_and/or to correct symbols

Leading underscore was missing.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix generic atomic ops and/or: add missing return
Mathieu Desnoyers [Tue, 14 Jun 2011 12:55:44 +0000 (08:55 -0400)] 
Fix generic atomic ops and/or: add missing return

Fixes build on powerpc:

./urcu/uatomic/generic.h: In function '_uatomic_and':
./urcu/uatomic/generic.h:310:2: warning: 'return' with a value, in
function returning void
./urcu/uatomic/generic.h: In function '_uatomic_or':
./urcu/uatomic/generic.h:374:2: warning: 'return' with a value, in
function returning void

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix test warning
Mathieu Desnoyers [Mon, 13 Jun 2011 20:06:52 +0000 (16:06 -0400)] 
Fix test warning

Patch from:
https://build.opensuse.org/package/view_file?file=liburcu0-cleanup.patch&package=liburcu0&project=devel%3Atools%3Alttng&srcmd5=fa3ab9fae0401b4c0f73a9cf474eea16

fixes a warning in the liburcu tests.

Reported-by: Yannick Brosseau <yannick.brosseau@polymtl.ca>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd missing headers into tarball, version 0.6.1 v0.6.1
Mathieu Desnoyers [Mon, 13 Jun 2011 14:01:18 +0000 (10:01 -0400)] 
Add missing headers into tarball, version 0.6.1

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate version to 0.6.0 v0.6.0
Mathieu Desnoyers [Sat, 11 Jun 2011 00:46:03 +0000 (20:46 -0400)] 
Update version to 0.6.0

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFutex: turn "int" into "int32_t" for portability
Mathieu Desnoyers [Sat, 11 Jun 2011 00:16:28 +0000 (20:16 -0400)] 
Futex: turn "int" into "int32_t" for portability

Even though int is 32-bit on all architectures supported by liburcu so
far, make it future-proof by uint a int32_t, which enforces the same
type width used by the system call in the kernel.

Using int32_t and not uint32_t to make comparison with 0 more
straightforward.

Reported-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd back uatomic_arch.h for slow deprecation process
Mathieu Desnoyers [Fri, 10 Jun 2011 23:20:50 +0000 (19:20 -0400)] 
Add back uatomic_arch.h for slow deprecation process

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd back urcu-futex.h and urcu_ref.h for slow deprecation
Mathieu Desnoyers [Fri, 10 Jun 2011 23:17:25 +0000 (19:17 -0400)] 
Add back urcu-futex.h and urcu_ref.h for slow deprecation

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd ldconfig step to README
Mathieu Desnoyers [Fri, 10 Jun 2011 22:36:59 +0000 (18:36 -0400)] 
Add ldconfig step to README

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd a pkg-config file for the new liburcu-cds
Yannick Brosseau [Fri, 10 Jun 2011 21:28:50 +0000 (17:28 -0400)] 
Add a pkg-config file for the new liburcu-cds

Signed-off-by: Yannick Brosseau <yannick.brosseau@gmail.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoConsolidate _LIBADD and _DEPENDENCIES in Makefile.am
Alexandre Montplaisir [Fri, 10 Jun 2011 21:14:23 +0000 (17:14 -0400)] 
Consolidate _LIBADD and _DEPENDENCIES in Makefile.am

Signed-off-by: Alexandre Montplaisir <alexandre.montplaisir@polymtl.ca>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd urcu/cds.h placeholder for all CDS headers
Mathieu Desnoyers [Fri, 10 Jun 2011 21:11:04 +0000 (17:11 -0400)] 
Add urcu/cds.h placeholder for all CDS headers

Using CDS headers becomes as simple as:

 #include <urcu/cds.h>

and link with

 -lurcu-cds

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoMove the version-info to the AM_LDFLAGS variable
Yannick Brosseau [Fri, 10 Jun 2011 20:58:15 +0000 (16:58 -0400)] 
Move the version-info to the AM_LDFLAGS variable

Since all the lib builded in this directory use the same version
we can put this command in the global variable

Signed-off-by: Yannick Brosseau <yannick.brosseau@gmail.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoInstalled headers should only include other headers with < >
Mathieu Desnoyers [Fri, 10 Jun 2011 20:11:30 +0000 (16:11 -0400)] 
Installed headers should only include other headers with < >

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRename urcu/urcu-futex.h to urcu/futex.h
Mathieu Desnoyers [Fri, 10 Jun 2011 20:06:00 +0000 (16:06 -0400)] 
Rename urcu/urcu-futex.h to urcu/futex.h

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRename urcu/urcu_ref.h to urcu/ref.h
Mathieu Desnoyers [Fri, 10 Jun 2011 20:02:31 +0000 (16:02 -0400)] 
Rename urcu/urcu_ref.h to urcu/ref.h

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoHeaders: move uatomic_*.h to urcu/uatomic/*.h, rename uatomic_arch.h to uatomic.h
Mathieu Desnoyers [Fri, 10 Jun 2011 19:58:34 +0000 (15:58 -0400)] 
Headers: move uatomic_*.h to urcu/uatomic/*.h, rename uatomic_arch.h to uatomic.h

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoHeaders: move arch_*.h to urcu/arch/*.h
Mathieu Desnoyers [Fri, 10 Jun 2011 19:48:01 +0000 (15:48 -0400)] 
Headers: move arch_*.h to urcu/arch/*.h

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoHeaders: move *-static.h headers to urcu/static/
Mathieu Desnoyers [Fri, 10 Jun 2011 19:32:31 +0000 (15:32 -0400)] 
Headers: move *-static.h headers to urcu/static/

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoInstall urcu/map/*.h into system
Mathieu Desnoyers [Fri, 10 Jun 2011 19:20:46 +0000 (15:20 -0400)] 
Install urcu/map/*.h into system

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoHeaders: move *-map.h headers to urcu/map/
Mathieu Desnoyers [Fri, 10 Jun 2011 19:16:36 +0000 (15:16 -0400)] 
Headers: move *-map.h headers to urcu/map/

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
This page took 0.039946 seconds and 4 git commands to generate.