Thread (10 messages) read the whole thread 10 messages, 3 authors, 2020-07-27

Re: [PATCH 5/5] selftests/powerpc: Add test for pkey siginfo verification

From: Sandipan Das <hidden>
Date: 2020-07-27 03:31:02


On 27/07/20 5:22 am, Michael Ellerman wrote:
quoted hunk ↗ jump to hunk
Christophe Leroy [off-list ref] writes:
quoted
Michael Ellerman [off-list ref] a écrit :
quoted
Sandipan Das [off-list ref] writes:
quoted
diff --git a/tools/testing/selftests/powerpc/mm/pkey_siginfo.c  
b/tools/testing/selftests/powerpc/mm/pkey_siginfo.c
new file mode 100644
index 0000000000000..58605c53d495d
--- /dev/null
+++ b/tools/testing/selftests/powerpc/mm/pkey_siginfo.c
@@ -0,0 +1,332 @@
...
quoted
+
+static void *protect(void *p)
+{
+	unsigned long rights;
+	unsigned int *base;
+	size_t size;
+	int tid, i;
+
+	tid = gettid();
pkey_siginfo.c: In function 'protect':
pkey_siginfo.c:103:8: error: implicit declaration of function  
'gettid' [-Werror=implicit-function-declaration]
  tid = gettid();
        ^


On Ubuntu 18.04 at least.
See https://man7.org/linux/man-pages/man2/gettid.2.html

Added in glibc 2.30
Thanks, this seems to work:
diff --git a/tools/testing/selftests/powerpc/include/utils.h b/tools/testing/selftests/powerpc/include/utils.h
index 69d16875802d..71d2924f5b8b 100644
--- a/tools/testing/selftests/powerpc/include/utils.h
+++ b/tools/testing/selftests/powerpc/include/utils.h
@@ -42,6 +42,16 @@ int perf_event_enable(int fd);
 int perf_event_disable(int fd);
 int perf_event_reset(int fd);
 
+#if !defined(__GLIBC_PREREQ) || !__GLIBC_PREREQ(2, 30)
+#include <unistd.h>
+#include <sys/syscall.h>
+
+static inline pid_t gettid(void)
+{
+	return syscall(SYS_gettid);
+}
+#endif
+
 static inline bool have_hwcap(unsigned long ftr)
 {
 	return ((unsigned long)get_auxv_entry(AT_HWCAP) & ftr) == ftr;

cheers
Thanks for catching this. Will add these changes to v2.

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