[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150617091703.GA2883@gmail.com>
Date: Wed, 17 Jun 2015 11:17:04 +0200
From: Ingo Molnar <mingo@...nel.org>
To: Riku Voipio <riku.voipio@....fi>,
Rusty Russell <rusty@...tcorp.com.au>,
Stephen Rothwell <sfr@...b.auug.org.au>
Cc: Peter Zijlstra <peterz@...radead.org>, mingo@...hat.com,
acme@...nel.org, linux-kernel@...r.kernel.org,
"Paul E. McKenney" <paulmck@...ibm.com>
Subject: [PATCH] tools/perf, rbtree: Add RCU wrappers to make rbtree.h usable
in user-space
* Riku Voipio <riku.voipio@....fi> wrote:
> Hi,
>
> The commit:
>
> commit d72da4a4d973d8a0a0d3c97e7cdebf287fbe3a99
> Author: Peter Zijlstra <peterz@...radead.org>
> Date: Wed May 27 11:09:36 2015 +0930
>
> rbtree: Make lockless searches non-fatal
>
> Adds <linux/rcupdate.h> to rbtree.h, which in turn is included from perf userspace
> headers. Now building tools/perf will fail with hundreds of lines of gcc complaining
> about kernel defines not available. Reverting the patch makes perf build again.
> This is with gcc-4.9 from debian but I don't think it's compiler specific.
Does the patch below make things work?
This fix could go into the modules tree, as this commit came via Rusty.
Stephen, feel free to add:
make -C tools/perf
to the linux-next build tests. It's always supposed to build without failure, in
pretty much whatever x86 distro you run your build tests on.
Thanks,
Ingo
===================>
>From 62c251255f07ede8efa356d4ea9ab51827ffa0d0 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo@...nel.org>
Date: Wed, 17 Jun 2015 11:07:11 +0200
Subject: [PATCH] tools/perf, rbtree: Add RCU wrappers to make rbtree.h usable in user-space
Reported-by: Riku Voipio <riku.voipio@....fi>
Signed-off-by: Ingo Molnar <mingo@...nel.org>
---
tools/perf/util/include/linux/rcupdate.h | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/tools/perf/util/include/linux/rcupdate.h b/tools/perf/util/include/linux/rcupdate.h
new file mode 100644
index 000000000000..3e022dd9a69b
--- /dev/null
+++ b/tools/perf/util/include/linux/rcupdate.h
@@ -0,0 +1,9 @@
+#ifndef PERF_LINUX_RCUPDATE_H_
+#define PERF_LINUX_RCUPDATE_H_
+
+/* Simple trivial wrappers for now, we don't use RCU in perf user-space (yet): */
+#define WRITE_ONCE(var, val) ((var) = (val))
+#define rcu_assign_pointer(ptr, val) WRITE_ONCE(ptr, val)
+
+#endif
+
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists