aboutsummaryrefslogtreecommitdiff
path: root/hw/9pfs/virtio-9p-synth.c
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2013-05-13 13:29:47 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2015-02-02 16:55:10 +0100
commit7911747bd46123ef8d8eef2ee49422bb8a4b274f (patch)
treec8411ff290dac6102131bef4c719dfd077381693 /hw/9pfs/virtio-9p-synth.c
parent158ef8cbb7e0fe8bb430310924b8bebe5f186e6e (diff)
downloadqemu-7911747bd46123ef8d8eef2ee49422bb8a4b274f.zip
qemu-7911747bd46123ef8d8eef2ee49422bb8a4b274f.tar.gz
qemu-7911747bd46123ef8d8eef2ee49422bb8a4b274f.tar.bz2
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>
Diffstat (limited to 'hw/9pfs/virtio-9p-synth.c')
-rw-r--r--hw/9pfs/virtio-9p-synth.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/hw/9pfs/virtio-9p-synth.c b/hw/9pfs/virtio-9p-synth.c
index 71262bc..e75aa87 100644
--- a/hw/9pfs/virtio-9p-synth.c
+++ b/hw/9pfs/virtio-9p-synth.c
@@ -17,6 +17,7 @@
#include "virtio-9p-xattr.h"
#include "fsdev/qemu-fsdev.h"
#include "virtio-9p-synth.h"
+#include "qemu/rcu.h"
#include <sys/stat.h>