Thread (21 messages) flat view 21 messages, 5 authors, 2015-12-13

Re: [PATCH 2/3] selftests: add membarrier syscall test

From: Michael Ellerman <hidden>
Date: 2015-09-03 09:24:52
Also in: lkml

On Tue, 2015-09-01 at 17:11 +0000, Mathieu Desnoyers wrote:
----- On Aug 31, 2015, at 2:54 AM, Michael Ellerman mpe-Gsx/Oe8HsFi6NASR9rTEaw@public.gmane.orgu wrote:
quoted
On Fri, 2015-07-10 at 16:58 -0400, Mathieu Desnoyers wrote:
quoted
diff --git a/tools/testing/selftests/membarrier/membarrier_test.c
b/tools/testing/selftests/membarrier/membarrier_test.c
new file mode 100644
index 0000000..3c9f217
--- /dev/null
+++ b/tools/testing/selftests/membarrier/membarrier_test.c
@@ -0,0 +1,71 @@
+#define _GNU_SOURCE
+#define __EXPORTED_HEADERS__
Why are you exporting that?

I suspect to try and get around the "Attempt to use kernel headers from user
space" warning.

But you're correctly building against the installed headers, not the kernel
headers, so you don't need to do that.
Just to make sure I understand: should we expect that
everyone will issue "make headers_install" on their system
before doing a make kselftest ?
Usually yes, but not always.

They might be deliberately building the selftests against their installed
headers. That's their choice.

In a case like this the test will fail to build, which is fine IMHO.
I see that a few selftests (e.g. memfd) are adding the
source tree include paths to the compiler include paths,
which I guess is to ensure that the kselftest will
work even if the system headers are not up to date.
Yeah they should be fixed to not do that. The unexported kernel headers are not
designed to be used from userspace. It works sometimes on some arches,
depending on the exact headers that get included etc. But it's wrong™.

cheers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help