qemu-e2k/util
Paolo Bonzini 7911747bd4 rcu: add rcu library
This includes a (mangled) copy of the liburcu code.  The main changes
are: 1) removing dependencies on many other header files in liburcu; 2)
removing for simplicity the tentative busy waiting in synchronize_rcu,
which has limited performance effects; 3) replacing futexes in
synchronize_rcu with QemuEvents for Win32 portability.  The API is
the same as liburcu, so it should be possible in the future to require
liburcu on POSIX systems for example and use our copy only on Windows.

Among the various versions available I chose urcu-mb, which is the
least invasive implementation even though it does not have the
fastest rcu_read_{lock,unlock} implementation.  The urcu flavor can
be changed later, after benchmarking.

Reviewed-by: Fam Zheng <famz@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-02-02 16:55:10 +01:00
..
acl.c acl: fix memory leak 2014-11-17 11:48:56 +01:00
aes.c
bitmap.c
bitops.c
compatfd.c
crc32c.c
cutils.c
envlist.c
error.c
event_notifier-posix.c
event_notifier-win32.c
fifo8.c
getauxval.c util: Move general qemu_getauxval to util/getauxval.c 2014-09-09 13:13:05 +02:00
hbitmap.c util: Use g_new() & friends where that makes obvious sense 2014-12-10 11:34:15 +03:00
hexdump.c
host-utils.c util: Don't link host-utils.o if it's empty 2014-09-09 13:13:05 +02:00
id.c util: Emancipate id_wellformed() from QemuOpts 2014-10-03 10:30:33 +01:00
iov.c util: Use g_new() & friends where that makes obvious sense 2014-12-10 11:34:15 +03:00
Makefile.objs rcu: add rcu library 2015-02-02 16:55:10 +01:00
module.c module: Don't complain when a module is absent 2014-07-18 14:57:35 +02:00
notify.c
osdep.c
oslib-posix.c memory: expose alignment used for allocating RAM as MemoryRegion API 2014-11-23 12:11:30 +02:00
oslib-win32.c memory: expose alignment used for allocating RAM as MemoryRegion API 2014-11-23 12:11:30 +02:00
path.c util/path: Use the GLib memory allocation routines 2014-08-24 13:16:32 +04:00
qemu-config.c
qemu-error.c qemu-error: Add error_vreport() 2014-10-09 15:36:15 +02:00
qemu-openpty.c
qemu-option.c block: Don't add trailing space in "Formating..." message 2014-12-12 16:52:33 +00:00
qemu-progress.c
qemu-sockets.c qemu-sockets: Add error to non-blocking connect handler 2014-10-09 15:36:15 +02:00
qemu-thread-posix.c qemu-thread: fix qemu_event without futexes 2015-02-02 16:55:09 +01:00
qemu-thread-win32.c qemu-thread: add per-thread atexit functions 2015-01-13 13:43:29 +00:00
qemu-timer-common.c
rcu.c rcu: add rcu library 2015-02-02 16:55:10 +01:00
readline.c
rfifolock.c
throttle.c
unicode.c
uri.c util: Fuse g_malloc(); memset() into g_new0() 2014-12-10 11:33:38 +03:00