aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-10-12 09:16:43 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-10-12 09:16:43 -0400
commit47e0de1a74505537788dad41a55a7bdc224462b9 (patch)
tree4ede496b97f530521de4ac8dacc26098f4ac368a /tools/testing
parent90eac7eee2f4257644dcfb9d22348fded7c24afd (diff)
parentce6a144a0d01c6628496e4c0d18fbf3a0362cc67 (diff)
Merge tag 'kselftest-3.18-updates-1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
Pull kselftest updates from Shuah Khan: - fix for missing arguments to printf - fix to build failures on 32-bit systems. - enhancement to run memfd_test run on all architectures as most architectures support __NR_memfd_create * tag 'kselftest-3.18-updates-1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest: selftests/memfd: Run test on all architectures memfd_test: Add missing argument to printf() memfd_test: Make it work on 32-bit systems
Diffstat (limited to 'tools/testing')
-rw-r--r--tools/testing/selftests/memfd/Makefile21
-rw-r--r--tools/testing/selftests/memfd/memfd_test.c36
2 files changed, 17 insertions, 40 deletions
diff --git a/tools/testing/selftests/memfd/Makefile b/tools/testing/selftests/memfd/Makefile
index ad4ab01cd28f..b80cd10d53ba 100644
--- a/tools/testing/selftests/memfd/Makefile
+++ b/tools/testing/selftests/memfd/Makefile
@@ -1,38 +1,17 @@
1uname_M := $(shell uname -m 2>/dev/null || echo not)
2ARCH ?= $(shell echo $(uname_M) | sed -e s/i.86/i386/)
3ifeq ($(ARCH),i386)
4 ARCH := x86
5endif
6ifeq ($(ARCH),x86_64)
7 ARCH := x86
8endif
9
10CFLAGS += -D_FILE_OFFSET_BITS=64 1CFLAGS += -D_FILE_OFFSET_BITS=64
11CFLAGS += -I../../../../arch/x86/include/generated/uapi/
12CFLAGS += -I../../../../arch/x86/include/uapi/
13CFLAGS += -I../../../../include/uapi/ 2CFLAGS += -I../../../../include/uapi/
14CFLAGS += -I../../../../include/ 3CFLAGS += -I../../../../include/
15 4
16all: 5all:
17ifeq ($(ARCH),x86)
18 gcc $(CFLAGS) memfd_test.c -o memfd_test 6 gcc $(CFLAGS) memfd_test.c -o memfd_test
19else
20 echo "Not an x86 target, can't build memfd selftest"
21endif
22 7
23run_tests: all 8run_tests: all
24ifeq ($(ARCH),x86)
25 gcc $(CFLAGS) memfd_test.c -o memfd_test 9 gcc $(CFLAGS) memfd_test.c -o memfd_test
26endif
27 @./memfd_test || echo "memfd_test: [FAIL]" 10 @./memfd_test || echo "memfd_test: [FAIL]"
28 11
29build_fuse: 12build_fuse:
30ifeq ($(ARCH),x86)
31 gcc $(CFLAGS) fuse_mnt.c `pkg-config fuse --cflags --libs` -o fuse_mnt 13 gcc $(CFLAGS) fuse_mnt.c `pkg-config fuse --cflags --libs` -o fuse_mnt
32 gcc $(CFLAGS) fuse_test.c -o fuse_test 14 gcc $(CFLAGS) fuse_test.c -o fuse_test
33else
34 echo "Not an x86 target, can't build memfd selftest"
35endif
36 15
37run_fuse: build_fuse 16run_fuse: build_fuse
38 @./run_fuse_test.sh || echo "fuse_test: [FAIL]" 17 @./run_fuse_test.sh || echo "fuse_test: [FAIL]"
diff --git a/tools/testing/selftests/memfd/memfd_test.c b/tools/testing/selftests/memfd/memfd_test.c
index 3634c909b1b0..0b9eafb7ab7b 100644
--- a/tools/testing/selftests/memfd/memfd_test.c
+++ b/tools/testing/selftests/memfd/memfd_test.c
@@ -59,9 +59,9 @@ static void mfd_fail_new(const char *name, unsigned int flags)
59 } 59 }
60} 60}
61 61
62static __u64 mfd_assert_get_seals(int fd) 62static unsigned int mfd_assert_get_seals(int fd)
63{ 63{
64 long r; 64 int r;
65 65
66 r = fcntl(fd, F_GET_SEALS); 66 r = fcntl(fd, F_GET_SEALS);
67 if (r < 0) { 67 if (r < 0) {
@@ -69,50 +69,48 @@ static __u64 mfd_assert_get_seals(int fd)
69 abort(); 69 abort();
70 } 70 }
71 71
72 return r; 72 return (unsigned int)r;
73} 73}
74 74
75static void mfd_assert_has_seals(int fd, __u64 seals) 75static void mfd_assert_has_seals(int fd, unsigned int seals)
76{ 76{
77 __u64 s; 77 unsigned int s;
78 78
79 s = mfd_assert_get_seals(fd); 79 s = mfd_assert_get_seals(fd);
80 if (s != seals) { 80 if (s != seals) {
81 printf("%llu != %llu = GET_SEALS(%d)\n", 81 printf("%u != %u = GET_SEALS(%d)\n", seals, s, fd);
82 (unsigned long long)seals, (unsigned long long)s, fd);
83 abort(); 82 abort();
84 } 83 }
85} 84}
86 85
87static void mfd_assert_add_seals(int fd, __u64 seals) 86static void mfd_assert_add_seals(int fd, unsigned int seals)
88{ 87{
89 long r; 88 int r;
90 __u64 s; 89 unsigned int s;
91 90
92 s = mfd_assert_get_seals(fd); 91 s = mfd_assert_get_seals(fd);
93 r = fcntl(fd, F_ADD_SEALS, seals); 92 r = fcntl(fd, F_ADD_SEALS, seals);
94 if (r < 0) { 93 if (r < 0) {
95 printf("ADD_SEALS(%d, %llu -> %llu) failed: %m\n", 94 printf("ADD_SEALS(%d, %u -> %u) failed: %m\n", fd, s, seals);
96 fd, (unsigned long long)s, (unsigned long long)seals);
97 abort(); 95 abort();
98 } 96 }
99} 97}
100 98
101static void mfd_fail_add_seals(int fd, __u64 seals) 99static void mfd_fail_add_seals(int fd, unsigned int seals)
102{ 100{
103 long r; 101 int r;
104 __u64 s; 102 unsigned int s;
105 103
106 r = fcntl(fd, F_GET_SEALS); 104 r = fcntl(fd, F_GET_SEALS);
107 if (r < 0) 105 if (r < 0)
108 s = 0; 106 s = 0;
109 else 107 else
110 s = r; 108 s = (unsigned int)r;
111 109
112 r = fcntl(fd, F_ADD_SEALS, seals); 110 r = fcntl(fd, F_ADD_SEALS, seals);
113 if (r >= 0) { 111 if (r >= 0) {
114 printf("ADD_SEALS(%d, %llu -> %llu) didn't fail as expected\n", 112 printf("ADD_SEALS(%d, %u -> %u) didn't fail as expected\n",
115 fd, (unsigned long long)s, (unsigned long long)seals); 113 fd, s, seals);
116 abort(); 114 abort();
117 } 115 }
118} 116}
@@ -205,7 +203,7 @@ static void mfd_fail_open(int fd, int flags, mode_t mode)
205 sprintf(buf, "/proc/self/fd/%d", fd); 203 sprintf(buf, "/proc/self/fd/%d", fd);
206 r = open(buf, flags, mode); 204 r = open(buf, flags, mode);
207 if (r >= 0) { 205 if (r >= 0) {
208 printf("open(%s) didn't fail as expected\n"); 206 printf("open(%s) didn't fail as expected\n", buf);
209 abort(); 207 abort();
210 } 208 }
211} 209}