Linux kernel Wait-Free Concurrent Queue Implementation

Ported to the Linux kernel from Userspace RCU library, at commit
 108a92e5b97ee91b2b902dba2dd2e78aab42f420.

Ref: http://git.lttng.org/userspace-rcu.git

It is provided as a starting point only. Test cases should be ported
from Userspace RCU to kernel space and thoroughly ran on a wide range of
architectures before considering this port production-ready.

Changelog since v1:
- Remove the internal mutex and helpers. Let the caller handle it.
- Disable preemption within append operation, thus removing sleep from
  dequeue, therefore removing the blocking/nonblocking API distinction.

Imported from mailing list post (by Jesper):
 https://lkml.org/lkml/2013/3/14/289
 https://lkml.org/lkml/diff/2013/3/14/289/1

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
ring_queue_test: remove function time_func() as functionality replaced by time_bench.ko

The functionality of time_func() have been moved to the time_bench kernel module.

Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
time_bench: minor cleanups

Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>