Skip to content

Commit 20e34aa

Browse files
Alexey Dobriyanakpm00
authored andcommitted
proc: fix proc-empty-vm test with vsyscall
* fix embarassing /proc/*/smaps test bug due to a typo in variable name it tested only the first line of the output if vsyscall is enabled: ffffffffff600000-ffffffffff601000 r-xp ... so test passed but tested only VMA location and permissions. * add "KSM" entry, unnoticed because (1) * swap "r-xp" and "--xp" vsyscall test strings, also unnoticed because (1) Link: https://lkml.kernel.org/r/76f42cce-b1ab-45ec-b6b2-4c64f0dccb90@p183 Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Tested-by: Swarup Laxman Kotikalapudi<swarupkotikalapudi@mail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
1 parent 6399310 commit 20e34aa

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

tools/testing/selftests/proc/proc-empty-vm.c

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ static const char proc_pid_maps_vsyscall_2[] =
6060
static const char proc_pid_smaps_vsyscall_0[] = "";
6161

6262
static const char proc_pid_smaps_vsyscall_1[] =
63-
"ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]\n"
63+
"ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]\n"
6464
"Size: 4 kB\n"
6565
"KernelPageSize: 4 kB\n"
6666
"MMUPageSize: 4 kB\n"
@@ -73,6 +73,7 @@ static const char proc_pid_smaps_vsyscall_1[] =
7373
"Private_Dirty: 0 kB\n"
7474
"Referenced: 0 kB\n"
7575
"Anonymous: 0 kB\n"
76+
"KSM: 0 kB\n"
7677
"LazyFree: 0 kB\n"
7778
"AnonHugePages: 0 kB\n"
7879
"ShmemPmdMapped: 0 kB\n"
@@ -90,7 +91,7 @@ static const char proc_pid_smaps_vsyscall_1[] =
9091
;
9192

9293
static const char proc_pid_smaps_vsyscall_2[] =
93-
"ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]\n"
94+
"ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]\n"
9495
"Size: 4 kB\n"
9596
"KernelPageSize: 4 kB\n"
9697
"MMUPageSize: 4 kB\n"
@@ -103,6 +104,7 @@ static const char proc_pid_smaps_vsyscall_2[] =
103104
"Private_Dirty: 0 kB\n"
104105
"Referenced: 0 kB\n"
105106
"Anonymous: 0 kB\n"
107+
"KSM: 0 kB\n"
106108
"LazyFree: 0 kB\n"
107109
"AnonHugePages: 0 kB\n"
108110
"ShmemPmdMapped: 0 kB\n"
@@ -244,10 +246,10 @@ static int test_proc_pid_smaps(pid_t pid)
244246
if (g_vsyscall == 0) {
245247
assert(rv == 0);
246248
} else {
247-
size_t len = strlen(g_proc_pid_maps_vsyscall);
249+
size_t len = strlen(g_proc_pid_smaps_vsyscall);
248250
/* TODO "ProtectionKey:" */
249251
assert(rv > len);
250-
assert(memcmp(buf, g_proc_pid_maps_vsyscall, len) == 0);
252+
assert(memcmp(buf, g_proc_pid_smaps_vsyscall, len) == 0);
251253
}
252254
return EXIT_SUCCESS;
253255
}

0 commit comments

Comments
 (0)