All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header
@ 2018-04-18  7:52 ` anders.roxell
  0 siblings, 0 replies; 27+ messages in thread
From: Anders Roxell @ 2018-04-18  7:52 UTC (permalink / raw)
  To: shuah, christian.brauner; +Cc: linux-kernel, linux-kselftest, Anders Roxell

We were picking up the wrong header should use asm/ioctls.h form the kernel
and not the header from the system (sys/ioctl.h). In the current code we
added the correct include and we added the kernel headers path to the CFLAGS.

Fixes: ce290a19609d ("selftests: add devpts selftests")
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
---

Hi,

I've been running devpts_pts on a mainline kernel (4.16+git0+60cc43fc88) and
the verify_invalid_ptmx_bind_mount() test failes with this failure:

root@intel-core2-32:~# ./devpts_pts
Failed to perform TIOCGPTPEER ioctl

However, I'm still confused why I'm not able to get the test to pass.  Strace
showes that -ENOENT return in the TIOCGPTPEER implementation in the
kernel. I think the -ENOENT gets returned from this path
devpts_mntget()->devpts_ptmx_path->path_pts().

See the strace issue below:
root@intel-core2-32:~# strace ./devpts_pts
execve("./devpts_pts", ["./devpts_pts"], [/* 17 vars */]) = 0
brk(NULL)                               = 0x5634e0092000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d338000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=16726, ...}) = 0
mmap(NULL, 16726, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f459d333000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\3\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1681056, ...}) = 0
mmap(NULL, 3787168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f459cd7b000
mprotect(0x7f459cf0f000, 2093056, PROT_NONE) = 0
mmap(0x7f459d10e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f459d10e000
mmap(0x7f459d114000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f459d114000
close(3)                                = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d331000
arch_prctl(ARCH_SET_FS, 0x7f459d331700) = 0
mprotect(0x7f459d10e000, 16384, PROT_READ) = 0
mprotect(0x5634debe3000, 4096, PROT_READ) = 0
mprotect(0x7f459d33a000, 4096, PROT_READ) = 0
munmap(0x7f459d333000, 16726)           = 0
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
unshare(CLONE_NEWNS)                    = 0
mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0
mount("/dev/pts/ptmx", "/dev/ptmx", NULL, MS_BIND, NULL) = 0
open("/dev/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
ioctl(3, TIOCSPTLCK, [0])               = 0
ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4377
wait4(4377, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4377
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4377, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
close(3)                                = 0
close(4)                                = 0
getpid()                                = 4376
open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
mount("/dev/pts/ptmx", "/tmp/devpts_ptmx_Z6aEvy", NULL, MS_BIND, NULL) = 0
close(3)                                = 0
open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
ioctl(3, TIOCSPTLCK, [0])               = 0
ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = -1 ENOENT (No such file or directory)
write(2, "Failed to perform TIOCGPTPEER io"..., 36Failed to perform TIOCGPTPEER ioctl
) = 36
close(3)                                = 0
umount2("/dev/pts", 0)                  = 0
umount2("/dev/ptmx", 0)                 = 0
mkdir("/tmp/devpts_fs_w22bR6", 0700)    = 0
mount("devpts", "/tmp/devpts_fs_w22bR6", "devpts", MS_NOSUID|MS_NOEXEC, "newinstance,ptmxmode=0666,mode=0"...) = 0
open("/tmp/devpts_fs_w22bR6/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
ioctl(3, TIOCSPTLCK, [0])               = 0
ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4378
wait4(4378, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4378
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4378, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
close(3)                                = 0
close(4)                                = 0
unlink("/tmp/devpts_fs_w22bR6")         = -1 EISDIR (Is a directory)
exit_group(0)                           = ?
+++ exited with 0 +++
root@intel-core2-32:~# 

 tools/testing/selftests/filesystems/Makefile     | 1 +
 tools/testing/selftests/filesystems/devpts_pts.c | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
index 4e6d09fb166f..427a401aae5c 100644
--- a/tools/testing/selftests/filesystems/Makefile
+++ b/tools/testing/selftests/filesystems/Makefile
@@ -1,5 +1,6 @@
 # SPDX-License-Identifier: GPL-2.0
 TEST_PROGS := dnotify_test devpts_pts
+CFLAGS += -I../../../../usr/include/
 all: $(TEST_PROGS)
 
 include ../lib.mk
diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c
index b9055e974289..79420b9d00c7 100644
--- a/tools/testing/selftests/filesystems/devpts_pts.c
+++ b/tools/testing/selftests/filesystems/devpts_pts.c
@@ -8,7 +8,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
-#include <sys/ioctl.h>
+#include <asm/ioctls.h>
 #include <sys/mount.h>
 #include <sys/wait.h>
 
-- 
2.11.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header
@ 2018-04-18  7:52 ` anders.roxell
  0 siblings, 0 replies; 27+ messages in thread
From: anders.roxell @ 2018-04-18  7:52 UTC (permalink / raw)


We were picking up the wrong header should use asm/ioctls.h form the kernel
and not the header from the system (sys/ioctl.h). In the current code we
added the correct include and we added the kernel headers path to the CFLAGS.

Fixes: ce290a19609d ("selftests: add devpts selftests")
Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
---

Hi,

I've been running devpts_pts on a mainline kernel (4.16+git0+60cc43fc88) and
the verify_invalid_ptmx_bind_mount() test failes with this failure:

root at intel-core2-32:~# ./devpts_pts
Failed to perform TIOCGPTPEER ioctl

However, I'm still confused why I'm not able to get the test to pass.  Strace
showes that -ENOENT return in the TIOCGPTPEER implementation in the
kernel. I think the -ENOENT gets returned from this path
devpts_mntget()->devpts_ptmx_path->path_pts().

See the strace issue below:
root at intel-core2-32:~# strace ./devpts_pts
execve("./devpts_pts", ["./devpts_pts"], [/* 17 vars */]) = 0
brk(NULL)                               = 0x5634e0092000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d338000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=16726, ...}) = 0
mmap(NULL, 16726, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f459d333000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\3\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1681056, ...}) = 0
mmap(NULL, 3787168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f459cd7b000
mprotect(0x7f459cf0f000, 2093056, PROT_NONE) = 0
mmap(0x7f459d10e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f459d10e000
mmap(0x7f459d114000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f459d114000
close(3)                                = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d331000
arch_prctl(ARCH_SET_FS, 0x7f459d331700) = 0
mprotect(0x7f459d10e000, 16384, PROT_READ) = 0
mprotect(0x5634debe3000, 4096, PROT_READ) = 0
mprotect(0x7f459d33a000, 4096, PROT_READ) = 0
munmap(0x7f459d333000, 16726)           = 0
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
unshare(CLONE_NEWNS)                    = 0
mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0
mount("/dev/pts/ptmx", "/dev/ptmx", NULL, MS_BIND, NULL) = 0
open("/dev/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
ioctl(3, TIOCSPTLCK, [0])               = 0
ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4377
wait4(4377, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4377
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4377, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
close(3)                                = 0
close(4)                                = 0
getpid()                                = 4376
open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
mount("/dev/pts/ptmx", "/tmp/devpts_ptmx_Z6aEvy", NULL, MS_BIND, NULL) = 0
close(3)                                = 0
open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
ioctl(3, TIOCSPTLCK, [0])               = 0
ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = -1 ENOENT (No such file or directory)
write(2, "Failed to perform TIOCGPTPEER io"..., 36Failed to perform TIOCGPTPEER ioctl
) = 36
close(3)                                = 0
umount2("/dev/pts", 0)                  = 0
umount2("/dev/ptmx", 0)                 = 0
mkdir("/tmp/devpts_fs_w22bR6", 0700)    = 0
mount("devpts", "/tmp/devpts_fs_w22bR6", "devpts", MS_NOSUID|MS_NOEXEC, "newinstance,ptmxmode=0666,mode=0"...) = 0
open("/tmp/devpts_fs_w22bR6/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
ioctl(3, TIOCSPTLCK, [0])               = 0
ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4378
wait4(4378, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4378
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4378, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
close(3)                                = 0
close(4)                                = 0
unlink("/tmp/devpts_fs_w22bR6")         = -1 EISDIR (Is a directory)
exit_group(0)                           = ?
+++ exited with 0 +++
root at intel-core2-32:~# 

 tools/testing/selftests/filesystems/Makefile     | 1 +
 tools/testing/selftests/filesystems/devpts_pts.c | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
index 4e6d09fb166f..427a401aae5c 100644
--- a/tools/testing/selftests/filesystems/Makefile
+++ b/tools/testing/selftests/filesystems/Makefile
@@ -1,5 +1,6 @@
 # SPDX-License-Identifier: GPL-2.0
 TEST_PROGS := dnotify_test devpts_pts
+CFLAGS += -I../../../../usr/include/
 all: $(TEST_PROGS)
 
 include ../lib.mk
diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c
index b9055e974289..79420b9d00c7 100644
--- a/tools/testing/selftests/filesystems/devpts_pts.c
+++ b/tools/testing/selftests/filesystems/devpts_pts.c
@@ -8,7 +8,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
-#include <sys/ioctl.h>
+#include <asm/ioctls.h>
 #include <sys/mount.h>
 #include <sys/wait.h>
 
-- 
2.11.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header
@ 2018-04-18  7:52 ` anders.roxell
  0 siblings, 0 replies; 27+ messages in thread
From: Anders Roxell @ 2018-04-18  7:52 UTC (permalink / raw)


We were picking up the wrong header should use asm/ioctls.h form the kernel
and not the header from the system (sys/ioctl.h). In the current code we
added the correct include and we added the kernel headers path to the CFLAGS.

Fixes: ce290a19609d ("selftests: add devpts selftests")
Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
---

Hi,

I've been running devpts_pts on a mainline kernel (4.16+git0+60cc43fc88) and
the verify_invalid_ptmx_bind_mount() test failes with this failure:

root at intel-core2-32:~# ./devpts_pts
Failed to perform TIOCGPTPEER ioctl

However, I'm still confused why I'm not able to get the test to pass.  Strace
showes that -ENOENT return in the TIOCGPTPEER implementation in the
kernel. I think the -ENOENT gets returned from this path
devpts_mntget()->devpts_ptmx_path->path_pts().

See the strace issue below:
root at intel-core2-32:~# strace ./devpts_pts
execve("./devpts_pts", ["./devpts_pts"], [/* 17 vars */]) = 0
brk(NULL)                               = 0x5634e0092000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d338000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=16726, ...}) = 0
mmap(NULL, 16726, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f459d333000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\3\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1681056, ...}) = 0
mmap(NULL, 3787168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f459cd7b000
mprotect(0x7f459cf0f000, 2093056, PROT_NONE) = 0
mmap(0x7f459d10e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f459d10e000
mmap(0x7f459d114000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f459d114000
close(3)                                = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d331000
arch_prctl(ARCH_SET_FS, 0x7f459d331700) = 0
mprotect(0x7f459d10e000, 16384, PROT_READ) = 0
mprotect(0x5634debe3000, 4096, PROT_READ) = 0
mprotect(0x7f459d33a000, 4096, PROT_READ) = 0
munmap(0x7f459d333000, 16726)           = 0
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
unshare(CLONE_NEWNS)                    = 0
mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0
mount("/dev/pts/ptmx", "/dev/ptmx", NULL, MS_BIND, NULL) = 0
open("/dev/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
ioctl(3, TIOCSPTLCK, [0])               = 0
ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4377
wait4(4377, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4377
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4377, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
close(3)                                = 0
close(4)                                = 0
getpid()                                = 4376
open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
mount("/dev/pts/ptmx", "/tmp/devpts_ptmx_Z6aEvy", NULL, MS_BIND, NULL) = 0
close(3)                                = 0
open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
ioctl(3, TIOCSPTLCK, [0])               = 0
ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = -1 ENOENT (No such file or directory)
write(2, "Failed to perform TIOCGPTPEER io"..., 36Failed to perform TIOCGPTPEER ioctl
) = 36
close(3)                                = 0
umount2("/dev/pts", 0)                  = 0
umount2("/dev/ptmx", 0)                 = 0
mkdir("/tmp/devpts_fs_w22bR6", 0700)    = 0
mount("devpts", "/tmp/devpts_fs_w22bR6", "devpts", MS_NOSUID|MS_NOEXEC, "newinstance,ptmxmode=0666,mode=0"...) = 0
open("/tmp/devpts_fs_w22bR6/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
ioctl(3, TIOCSPTLCK, [0])               = 0
ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4378
wait4(4378, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4378
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4378, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
close(3)                                = 0
close(4)                                = 0
unlink("/tmp/devpts_fs_w22bR6")         = -1 EISDIR (Is a directory)
exit_group(0)                           = ?
+++ exited with 0 +++
root at intel-core2-32:~# 

 tools/testing/selftests/filesystems/Makefile     | 1 +
 tools/testing/selftests/filesystems/devpts_pts.c | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
index 4e6d09fb166f..427a401aae5c 100644
--- a/tools/testing/selftests/filesystems/Makefile
+++ b/tools/testing/selftests/filesystems/Makefile
@@ -1,5 +1,6 @@
 # SPDX-License-Identifier: GPL-2.0
 TEST_PROGS := dnotify_test devpts_pts
+CFLAGS += -I../../../../usr/include/
 all: $(TEST_PROGS)
 
 include ../lib.mk
diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c
index b9055e974289..79420b9d00c7 100644
--- a/tools/testing/selftests/filesystems/devpts_pts.c
+++ b/tools/testing/selftests/filesystems/devpts_pts.c
@@ -8,7 +8,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
-#include <sys/ioctl.h>
+#include <asm/ioctls.h>
 #include <sys/mount.h>
 #include <sys/wait.h>
 
-- 
2.11.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 2/2] selftests/filesystems: remove Makefile warning
  2018-04-18  7:52 ` anders.roxell
  (?)
@ 2018-04-18  7:52   ` anders.roxell
  -1 siblings, 0 replies; 27+ messages in thread
From: Anders Roxell @ 2018-04-18  7:52 UTC (permalink / raw)
  To: shuah, christian.brauner; +Cc: linux-kernel, linux-kselftest, Anders Roxell

When overriding the 'clean' target make throws up warnings:
Makefile:9: warning: overriding recipe for target 'clean'
../lib.mk:98: warning: ignoring old recipe for target 'clean'

In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
does that we can remove the target 'clean' and 'all'.

Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
---
 tools/testing/selftests/filesystems/Makefile | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
index 427a401aae5c..a55ac3ac09ad 100644
--- a/tools/testing/selftests/filesystems/Makefile
+++ b/tools/testing/selftests/filesystems/Makefile
@@ -1,9 +1,5 @@
 # SPDX-License-Identifier: GPL-2.0
-TEST_PROGS := dnotify_test devpts_pts
+TEST_GEN_PROGS := dnotify_test devpts_pts
 CFLAGS += -I../../../../usr/include/
-all: $(TEST_PROGS)
 
 include ../lib.mk
-
-clean:
-	rm -fr $(TEST_PROGS)
-- 
2.11.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 2/2] selftests/filesystems: remove Makefile warning
@ 2018-04-18  7:52   ` anders.roxell
  0 siblings, 0 replies; 27+ messages in thread
From: anders.roxell @ 2018-04-18  7:52 UTC (permalink / raw)


When overriding the 'clean' target make throws up warnings:
Makefile:9: warning: overriding recipe for target 'clean'
../lib.mk:98: warning: ignoring old recipe for target 'clean'

In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
does that we can remove the target 'clean' and 'all'.

Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
---
 tools/testing/selftests/filesystems/Makefile | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
index 427a401aae5c..a55ac3ac09ad 100644
--- a/tools/testing/selftests/filesystems/Makefile
+++ b/tools/testing/selftests/filesystems/Makefile
@@ -1,9 +1,5 @@
 # SPDX-License-Identifier: GPL-2.0
-TEST_PROGS := dnotify_test devpts_pts
+TEST_GEN_PROGS := dnotify_test devpts_pts
 CFLAGS += -I../../../../usr/include/
-all: $(TEST_PROGS)
 
 include ../lib.mk
-
-clean:
-	rm -fr $(TEST_PROGS)
-- 
2.11.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 2/2] selftests/filesystems: remove Makefile warning
@ 2018-04-18  7:52   ` anders.roxell
  0 siblings, 0 replies; 27+ messages in thread
From: Anders Roxell @ 2018-04-18  7:52 UTC (permalink / raw)


When overriding the 'clean' target make throws up warnings:
Makefile:9: warning: overriding recipe for target 'clean'
../lib.mk:98: warning: ignoring old recipe for target 'clean'

In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
does that we can remove the target 'clean' and 'all'.

Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
---
 tools/testing/selftests/filesystems/Makefile | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
index 427a401aae5c..a55ac3ac09ad 100644
--- a/tools/testing/selftests/filesystems/Makefile
+++ b/tools/testing/selftests/filesystems/Makefile
@@ -1,9 +1,5 @@
 # SPDX-License-Identifier: GPL-2.0
-TEST_PROGS := dnotify_test devpts_pts
+TEST_GEN_PROGS := dnotify_test devpts_pts
 CFLAGS += -I../../../../usr/include/
-all: $(TEST_PROGS)
 
 include ../lib.mk
-
-clean:
-	rm -fr $(TEST_PROGS)
-- 
2.11.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH 2/2] selftests/filesystems: remove Makefile warning
  2018-04-18  7:52   ` anders.roxell
  (?)
@ 2018-04-18 14:54     ` shuah
  -1 siblings, 0 replies; 27+ messages in thread
From: Shuah Khan @ 2018-04-18 14:54 UTC (permalink / raw)
  To: Anders Roxell, christian.brauner
  Cc: linux-kernel, linux-kselftest, Michael Ellerman, Shuah Khan, Shuah Khan

On 04/18/2018 01:52 AM, Anders Roxell wrote:
> When overriding the 'clean' target make throws up warnings:
> Makefile:9: warning: overriding recipe for target 'clean'
> ../lib.mk:98: warning: ignoring old recipe for target 'clean'
> 
> In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
> does that we can remove the target 'clean' and 'all'.
> 
> Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
> Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
> ---
>  tools/testing/selftests/filesystems/Makefile | 6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)
> 
> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
> index 427a401aae5c..a55ac3ac09ad 100644
> --- a/tools/testing/selftests/filesystems/Makefile
> +++ b/tools/testing/selftests/filesystems/Makefile
> @@ -1,9 +1,5 @@
>  # SPDX-License-Identifier: GPL-2.0
> -TEST_PROGS := dnotify_test devpts_pts
> +TEST_GEN_PROGS := dnotify_test devpts_pts
>  CFLAGS += -I../../../../usr/include/
> -all: $(TEST_PROGS)
>  
>  include ../lib.mk
> -
> -clean:
> -	rm -fr $(TEST_PROGS)
> 

Hi Anders,

Michael sent in a patch to fix the problem already. It is in linux-kselftest fixes
branch for 4.17-rc2

Classifying dnotify_test to TEST_GEN_PROGS_EXTENDED as Michael is the correct way
to handle this problem. It allows the test to be built and installed and it won't
be run in the main kselftest run.

thanks,
-- Shuah

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 2/2] selftests/filesystems: remove Makefile warning
@ 2018-04-18 14:54     ` shuah
  0 siblings, 0 replies; 27+ messages in thread
From: shuah @ 2018-04-18 14:54 UTC (permalink / raw)


On 04/18/2018 01:52 AM, Anders Roxell wrote:
> When overriding the 'clean' target make throws up warnings:
> Makefile:9: warning: overriding recipe for target 'clean'
> ../lib.mk:98: warning: ignoring old recipe for target 'clean'
> 
> In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
> does that we can remove the target 'clean' and 'all'.
> 
> Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
> ---
>  tools/testing/selftests/filesystems/Makefile | 6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)
> 
> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
> index 427a401aae5c..a55ac3ac09ad 100644
> --- a/tools/testing/selftests/filesystems/Makefile
> +++ b/tools/testing/selftests/filesystems/Makefile
> @@ -1,9 +1,5 @@
>  # SPDX-License-Identifier: GPL-2.0
> -TEST_PROGS := dnotify_test devpts_pts
> +TEST_GEN_PROGS := dnotify_test devpts_pts
>  CFLAGS += -I../../../../usr/include/
> -all: $(TEST_PROGS)
>  
>  include ../lib.mk
> -
> -clean:
> -	rm -fr $(TEST_PROGS)
> 

Hi Anders,

Michael sent in a patch to fix the problem already. It is in linux-kselftest fixes
branch for 4.17-rc2

Classifying dnotify_test to TEST_GEN_PROGS_EXTENDED as Michael is the correct way
to handle this problem. It allows the test to be built and installed and it won't
be run in the main kselftest run.

thanks,
-- Shuah
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 2/2] selftests/filesystems: remove Makefile warning
@ 2018-04-18 14:54     ` shuah
  0 siblings, 0 replies; 27+ messages in thread
From: Shuah Khan @ 2018-04-18 14:54 UTC (permalink / raw)


On 04/18/2018 01:52 AM, Anders Roxell wrote:
> When overriding the 'clean' target make throws up warnings:
> Makefile:9: warning: overriding recipe for target 'clean'
> ../lib.mk:98: warning: ignoring old recipe for target 'clean'
> 
> In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
> does that we can remove the target 'clean' and 'all'.
> 
> Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
> ---
>  tools/testing/selftests/filesystems/Makefile | 6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)
> 
> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
> index 427a401aae5c..a55ac3ac09ad 100644
> --- a/tools/testing/selftests/filesystems/Makefile
> +++ b/tools/testing/selftests/filesystems/Makefile
> @@ -1,9 +1,5 @@
>  # SPDX-License-Identifier: GPL-2.0
> -TEST_PROGS := dnotify_test devpts_pts
> +TEST_GEN_PROGS := dnotify_test devpts_pts
>  CFLAGS += -I../../../../usr/include/
> -all: $(TEST_PROGS)
>  
>  include ../lib.mk
> -
> -clean:
> -	rm -fr $(TEST_PROGS)
> 

Hi Anders,

Michael sent in a patch to fix the problem already. It is in linux-kselftest fixes
branch for 4.17-rc2

Classifying dnotify_test to TEST_GEN_PROGS_EXTENDED as Michael is the correct way
to handle this problem. It allows the test to be built and installed and it won't
be run in the main kselftest run.

thanks,
-- Shuah
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 2/2] selftests/filesystems: remove Makefile warning
  2018-04-18 14:54     ` shuah
  (?)
@ 2018-04-18 20:32       ` anders.roxell
  -1 siblings, 0 replies; 27+ messages in thread
From: Anders Roxell @ 2018-04-18 20:32 UTC (permalink / raw)
  To: Shuah Khan
  Cc: Christian Brauner, Linux Kernel Mailing List, linux-kselftest,
	Michael Ellerman, Shuah Khan

On 18 April 2018 at 16:54, Shuah Khan <shuah@kernel.org> wrote:
> On 04/18/2018 01:52 AM, Anders Roxell wrote:
>> When overriding the 'clean' target make throws up warnings:
>> Makefile:9: warning: overriding recipe for target 'clean'
>> ../lib.mk:98: warning: ignoring old recipe for target 'clean'
>>
>> In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
>> does that we can remove the target 'clean' and 'all'.
>>
>> Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
>> Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
>> ---
>>  tools/testing/selftests/filesystems/Makefile | 6 +-----
>>  1 file changed, 1 insertion(+), 5 deletions(-)
>>
>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>> index 427a401aae5c..a55ac3ac09ad 100644
>> --- a/tools/testing/selftests/filesystems/Makefile
>> +++ b/tools/testing/selftests/filesystems/Makefile
>> @@ -1,9 +1,5 @@
>>  # SPDX-License-Identifier: GPL-2.0
>> -TEST_PROGS := dnotify_test devpts_pts
>> +TEST_GEN_PROGS := dnotify_test devpts_pts
>>  CFLAGS += -I../../../../usr/include/
>> -all: $(TEST_PROGS)
>>
>>  include ../lib.mk
>> -
>> -clean:
>> -     rm -fr $(TEST_PROGS)
>>
>
> Hi Anders,
>
> Michael sent in a patch to fix the problem already.

I'm sorry I should have seen that.

> It is in linux-kselftest fixes
> branch for 4.17-rc2
>
> Classifying dnotify_test to TEST_GEN_PROGS_EXTENDED as Michael is the correct way
> to handle this problem. It allows the test to be built and installed and it won't
> be run in the main kselftest run.

Great, thank you for the explanation.

Cheers,
Anders

>
> thanks,
> -- Shuah

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 2/2] selftests/filesystems: remove Makefile warning
@ 2018-04-18 20:32       ` anders.roxell
  0 siblings, 0 replies; 27+ messages in thread
From: anders.roxell @ 2018-04-18 20:32 UTC (permalink / raw)


On 18 April 2018 at 16:54, Shuah Khan <shuah at kernel.org> wrote:
> On 04/18/2018 01:52 AM, Anders Roxell wrote:
>> When overriding the 'clean' target make throws up warnings:
>> Makefile:9: warning: overriding recipe for target 'clean'
>> ../lib.mk:98: warning: ignoring old recipe for target 'clean'
>>
>> In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
>> does that we can remove the target 'clean' and 'all'.
>>
>> Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
>> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
>> ---
>>  tools/testing/selftests/filesystems/Makefile | 6 +-----
>>  1 file changed, 1 insertion(+), 5 deletions(-)
>>
>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>> index 427a401aae5c..a55ac3ac09ad 100644
>> --- a/tools/testing/selftests/filesystems/Makefile
>> +++ b/tools/testing/selftests/filesystems/Makefile
>> @@ -1,9 +1,5 @@
>>  # SPDX-License-Identifier: GPL-2.0
>> -TEST_PROGS := dnotify_test devpts_pts
>> +TEST_GEN_PROGS := dnotify_test devpts_pts
>>  CFLAGS += -I../../../../usr/include/
>> -all: $(TEST_PROGS)
>>
>>  include ../lib.mk
>> -
>> -clean:
>> -     rm -fr $(TEST_PROGS)
>>
>
> Hi Anders,
>
> Michael sent in a patch to fix the problem already.

I'm sorry I should have seen that.

> It is in linux-kselftest fixes
> branch for 4.17-rc2
>
> Classifying dnotify_test to TEST_GEN_PROGS_EXTENDED as Michael is the correct way
> to handle this problem. It allows the test to be built and installed and it won't
> be run in the main kselftest run.

Great, thank you for the explanation.

Cheers,
Anders

>
> thanks,
> -- Shuah
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 2/2] selftests/filesystems: remove Makefile warning
@ 2018-04-18 20:32       ` anders.roxell
  0 siblings, 0 replies; 27+ messages in thread
From: Anders Roxell @ 2018-04-18 20:32 UTC (permalink / raw)


On 18 April 2018@16:54, Shuah Khan <shuah@kernel.org> wrote:
> On 04/18/2018 01:52 AM, Anders Roxell wrote:
>> When overriding the 'clean' target make throws up warnings:
>> Makefile:9: warning: overriding recipe for target 'clean'
>> ../lib.mk:98: warning: ignoring old recipe for target 'clean'
>>
>> In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
>> does that we can remove the target 'clean' and 'all'.
>>
>> Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
>> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
>> ---
>>  tools/testing/selftests/filesystems/Makefile | 6 +-----
>>  1 file changed, 1 insertion(+), 5 deletions(-)
>>
>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>> index 427a401aae5c..a55ac3ac09ad 100644
>> --- a/tools/testing/selftests/filesystems/Makefile
>> +++ b/tools/testing/selftests/filesystems/Makefile
>> @@ -1,9 +1,5 @@
>>  # SPDX-License-Identifier: GPL-2.0
>> -TEST_PROGS := dnotify_test devpts_pts
>> +TEST_GEN_PROGS := dnotify_test devpts_pts
>>  CFLAGS += -I../../../../usr/include/
>> -all: $(TEST_PROGS)
>>
>>  include ../lib.mk
>> -
>> -clean:
>> -     rm -fr $(TEST_PROGS)
>>
>
> Hi Anders,
>
> Michael sent in a patch to fix the problem already.

I'm sorry I should have seen that.

> It is in linux-kselftest fixes
> branch for 4.17-rc2
>
> Classifying dnotify_test to TEST_GEN_PROGS_EXTENDED as Michael is the correct way
> to handle this problem. It allows the test to be built and installed and it won't
> be run in the main kselftest run.

Great, thank you for the explanation.

Cheers,
Anders

>
> thanks,
> -- Shuah
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 2/2] selftests/filesystems: remove Makefile warning
  2018-04-18 14:54     ` shuah
  (?)
@ 2018-04-19  8:22       ` anders.roxell
  -1 siblings, 0 replies; 27+ messages in thread
From: Anders Roxell @ 2018-04-19  8:22 UTC (permalink / raw)
  To: Shuah Khan
  Cc: Christian Brauner, Linux Kernel Mailing List, linux-kselftest,
	Michael Ellerman, Shuah Khan

On 18 April 2018 at 16:54, Shuah Khan <shuah@kernel.org> wrote:
> On 04/18/2018 01:52 AM, Anders Roxell wrote:
>> When overriding the 'clean' target make throws up warnings:
>> Makefile:9: warning: overriding recipe for target 'clean'
>> ../lib.mk:98: warning: ignoring old recipe for target 'clean'
>>
>> In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
>> does that we can remove the target 'clean' and 'all'.
>>
>> Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
>> Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
>> ---
>>  tools/testing/selftests/filesystems/Makefile | 6 +-----
>>  1 file changed, 1 insertion(+), 5 deletions(-)
>>
>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>> index 427a401aae5c..a55ac3ac09ad 100644
>> --- a/tools/testing/selftests/filesystems/Makefile
>> +++ b/tools/testing/selftests/filesystems/Makefile
>> @@ -1,9 +1,5 @@
>>  # SPDX-License-Identifier: GPL-2.0
>> -TEST_PROGS := dnotify_test devpts_pts
>> +TEST_GEN_PROGS := dnotify_test devpts_pts
>>  CFLAGS += -I../../../../usr/include/
>> -all: $(TEST_PROGS)
>>
>>  include ../lib.mk
>> -
>> -clean:
>> -     rm -fr $(TEST_PROGS)
>>
>
> Hi Anders,
>
> Michael sent in a patch to fix the problem already. It is in linux-kselftest fixes
> branch for 4.17-rc2
>
> Classifying dnotify_test to TEST_GEN_PROGS_EXTENDED as Michael is the correct way
> to handle this problem. It allows the test to be built and installed and it won't
> be run in the main kselftest run.

Why don't we want to run them in the main kselftest run?
Is the rationale documented somewhere/somehow?
If they are long running tests or intrusive tests, can we document
with a printout like:
=== Test ${foo} - SKIPPED (${short_rationale}) ===
=== Test dnotify_test - SKIPPED (long run) ===
=== Test devpts_pts - SKIPPED (intrusive run) ===

Should there be a variable to turn them on from the main kselftest run?

Cheers,
Anders

>
> thanks,
> -- Shuah

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 2/2] selftests/filesystems: remove Makefile warning
@ 2018-04-19  8:22       ` anders.roxell
  0 siblings, 0 replies; 27+ messages in thread
From: anders.roxell @ 2018-04-19  8:22 UTC (permalink / raw)


On 18 April 2018 at 16:54, Shuah Khan <shuah at kernel.org> wrote:
> On 04/18/2018 01:52 AM, Anders Roxell wrote:
>> When overriding the 'clean' target make throws up warnings:
>> Makefile:9: warning: overriding recipe for target 'clean'
>> ../lib.mk:98: warning: ignoring old recipe for target 'clean'
>>
>> In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
>> does that we can remove the target 'clean' and 'all'.
>>
>> Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
>> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
>> ---
>>  tools/testing/selftests/filesystems/Makefile | 6 +-----
>>  1 file changed, 1 insertion(+), 5 deletions(-)
>>
>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>> index 427a401aae5c..a55ac3ac09ad 100644
>> --- a/tools/testing/selftests/filesystems/Makefile
>> +++ b/tools/testing/selftests/filesystems/Makefile
>> @@ -1,9 +1,5 @@
>>  # SPDX-License-Identifier: GPL-2.0
>> -TEST_PROGS := dnotify_test devpts_pts
>> +TEST_GEN_PROGS := dnotify_test devpts_pts
>>  CFLAGS += -I../../../../usr/include/
>> -all: $(TEST_PROGS)
>>
>>  include ../lib.mk
>> -
>> -clean:
>> -     rm -fr $(TEST_PROGS)
>>
>
> Hi Anders,
>
> Michael sent in a patch to fix the problem already. It is in linux-kselftest fixes
> branch for 4.17-rc2
>
> Classifying dnotify_test to TEST_GEN_PROGS_EXTENDED as Michael is the correct way
> to handle this problem. It allows the test to be built and installed and it won't
> be run in the main kselftest run.

Why don't we want to run them in the main kselftest run?
Is the rationale documented somewhere/somehow?
If they are long running tests or intrusive tests, can we document
with a printout like:
=== Test ${foo} - SKIPPED (${short_rationale}) ===
=== Test dnotify_test - SKIPPED (long run) ===
=== Test devpts_pts - SKIPPED (intrusive run) ===

Should there be a variable to turn them on from the main kselftest run?

Cheers,
Anders

>
> thanks,
> -- Shuah
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 2/2] selftests/filesystems: remove Makefile warning
@ 2018-04-19  8:22       ` anders.roxell
  0 siblings, 0 replies; 27+ messages in thread
From: Anders Roxell @ 2018-04-19  8:22 UTC (permalink / raw)


On 18 April 2018@16:54, Shuah Khan <shuah@kernel.org> wrote:
> On 04/18/2018 01:52 AM, Anders Roxell wrote:
>> When overriding the 'clean' target make throws up warnings:
>> Makefile:9: warning: overriding recipe for target 'clean'
>> ../lib.mk:98: warning: ignoring old recipe for target 'clean'
>>
>> In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
>> does that we can remove the target 'clean' and 'all'.
>>
>> Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
>> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
>> ---
>>  tools/testing/selftests/filesystems/Makefile | 6 +-----
>>  1 file changed, 1 insertion(+), 5 deletions(-)
>>
>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>> index 427a401aae5c..a55ac3ac09ad 100644
>> --- a/tools/testing/selftests/filesystems/Makefile
>> +++ b/tools/testing/selftests/filesystems/Makefile
>> @@ -1,9 +1,5 @@
>>  # SPDX-License-Identifier: GPL-2.0
>> -TEST_PROGS := dnotify_test devpts_pts
>> +TEST_GEN_PROGS := dnotify_test devpts_pts
>>  CFLAGS += -I../../../../usr/include/
>> -all: $(TEST_PROGS)
>>
>>  include ../lib.mk
>> -
>> -clean:
>> -     rm -fr $(TEST_PROGS)
>>
>
> Hi Anders,
>
> Michael sent in a patch to fix the problem already. It is in linux-kselftest fixes
> branch for 4.17-rc2
>
> Classifying dnotify_test to TEST_GEN_PROGS_EXTENDED as Michael is the correct way
> to handle this problem. It allows the test to be built and installed and it won't
> be run in the main kselftest run.

Why don't we want to run them in the main kselftest run?
Is the rationale documented somewhere/somehow?
If they are long running tests or intrusive tests, can we document
with a printout like:
=== Test ${foo} - SKIPPED (${short_rationale}) ===
=== Test dnotify_test - SKIPPED (long run) ===
=== Test devpts_pts - SKIPPED (intrusive run) ===

Should there be a variable to turn them on from the main kselftest run?

Cheers,
Anders

>
> thanks,
> -- Shuah
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 2/2] selftests/filesystems: remove Makefile warning
  2018-04-19  8:22       ` anders.roxell
  (?)
@ 2018-04-19  8:56         ` anders.roxell
  -1 siblings, 0 replies; 27+ messages in thread
From: Anders Roxell @ 2018-04-19  8:56 UTC (permalink / raw)
  To: Shuah Khan
  Cc: Christian Brauner, Linux Kernel Mailing List, linux-kselftest,
	Michael Ellerman, Shuah Khan

On 19 April 2018 at 10:22, Anders Roxell <anders.roxell@linaro.org> wrote:
> On 18 April 2018 at 16:54, Shuah Khan <shuah@kernel.org> wrote:
>> On 04/18/2018 01:52 AM, Anders Roxell wrote:
>>> When overriding the 'clean' target make throws up warnings:
>>> Makefile:9: warning: overriding recipe for target 'clean'
>>> ../lib.mk:98: warning: ignoring old recipe for target 'clean'
>>>
>>> In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
>>> does that we can remove the target 'clean' and 'all'.
>>>
>>> Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
>>> Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
>>> ---
>>>  tools/testing/selftests/filesystems/Makefile | 6 +-----
>>>  1 file changed, 1 insertion(+), 5 deletions(-)
>>>
>>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>>> index 427a401aae5c..a55ac3ac09ad 100644
>>> --- a/tools/testing/selftests/filesystems/Makefile
>>> +++ b/tools/testing/selftests/filesystems/Makefile
>>> @@ -1,9 +1,5 @@
>>>  # SPDX-License-Identifier: GPL-2.0
>>> -TEST_PROGS := dnotify_test devpts_pts
>>> +TEST_GEN_PROGS := dnotify_test devpts_pts
>>>  CFLAGS += -I../../../../usr/include/
>>> -all: $(TEST_PROGS)
>>>
>>>  include ../lib.mk
>>> -
>>> -clean:
>>> -     rm -fr $(TEST_PROGS)
>>>
>>
>> Hi Anders,
>>
>> Michael sent in a patch to fix the problem already. It is in linux-kselftest fixes
>> branch for 4.17-rc2
>>
>> Classifying dnotify_test to TEST_GEN_PROGS_EXTENDED as Michael is the correct way
>> to handle this problem. It allows the test to be built and installed and it won't
>> be run in the main kselftest run.
>
> Why don't we want to run them in the main kselftest run?
> Is the rationale documented somewhere/somehow?

Think I found the rationale documented in the changelog [1].

What do you think about adding a variable to this test saying run for
xx minutes and if it hasn't
crashed, consider it as a passed test ?

Cheers,
Anders
[1] https://patchwork.kernel.org/patch/10332365/

> If they are long running tests or intrusive tests, can we document
> with a printout like:
> === Test ${foo} - SKIPPED (${short_rationale}) ===
> === Test dnotify_test - SKIPPED (long run) ===
> === Test devpts_pts - SKIPPED (intrusive run) ===
>
> Should there be a variable to turn them on from the main kselftest run?
>
> Cheers,
> Anders
>
>>
>> thanks,
>> -- Shuah

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 2/2] selftests/filesystems: remove Makefile warning
@ 2018-04-19  8:56         ` anders.roxell
  0 siblings, 0 replies; 27+ messages in thread
From: anders.roxell @ 2018-04-19  8:56 UTC (permalink / raw)


On 19 April 2018 at 10:22, Anders Roxell <anders.roxell at linaro.org> wrote:
> On 18 April 2018 at 16:54, Shuah Khan <shuah at kernel.org> wrote:
>> On 04/18/2018 01:52 AM, Anders Roxell wrote:
>>> When overriding the 'clean' target make throws up warnings:
>>> Makefile:9: warning: overriding recipe for target 'clean'
>>> ../lib.mk:98: warning: ignoring old recipe for target 'clean'
>>>
>>> In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
>>> does that we can remove the target 'clean' and 'all'.
>>>
>>> Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
>>> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
>>> ---
>>>  tools/testing/selftests/filesystems/Makefile | 6 +-----
>>>  1 file changed, 1 insertion(+), 5 deletions(-)
>>>
>>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>>> index 427a401aae5c..a55ac3ac09ad 100644
>>> --- a/tools/testing/selftests/filesystems/Makefile
>>> +++ b/tools/testing/selftests/filesystems/Makefile
>>> @@ -1,9 +1,5 @@
>>>  # SPDX-License-Identifier: GPL-2.0
>>> -TEST_PROGS := dnotify_test devpts_pts
>>> +TEST_GEN_PROGS := dnotify_test devpts_pts
>>>  CFLAGS += -I../../../../usr/include/
>>> -all: $(TEST_PROGS)
>>>
>>>  include ../lib.mk
>>> -
>>> -clean:
>>> -     rm -fr $(TEST_PROGS)
>>>
>>
>> Hi Anders,
>>
>> Michael sent in a patch to fix the problem already. It is in linux-kselftest fixes
>> branch for 4.17-rc2
>>
>> Classifying dnotify_test to TEST_GEN_PROGS_EXTENDED as Michael is the correct way
>> to handle this problem. It allows the test to be built and installed and it won't
>> be run in the main kselftest run.
>
> Why don't we want to run them in the main kselftest run?
> Is the rationale documented somewhere/somehow?

Think I found the rationale documented in the changelog [1].

What do you think about adding a variable to this test saying run for
xx minutes and if it hasn't
crashed, consider it as a passed test ?

Cheers,
Anders
[1] https://patchwork.kernel.org/patch/10332365/

> If they are long running tests or intrusive tests, can we document
> with a printout like:
> === Test ${foo} - SKIPPED (${short_rationale}) ===
> === Test dnotify_test - SKIPPED (long run) ===
> === Test devpts_pts - SKIPPED (intrusive run) ===
>
> Should there be a variable to turn them on from the main kselftest run?
>
> Cheers,
> Anders
>
>>
>> thanks,
>> -- Shuah
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 2/2] selftests/filesystems: remove Makefile warning
@ 2018-04-19  8:56         ` anders.roxell
  0 siblings, 0 replies; 27+ messages in thread
From: Anders Roxell @ 2018-04-19  8:56 UTC (permalink / raw)


On 19 April 2018@10:22, Anders Roxell <anders.roxell@linaro.org> wrote:
> On 18 April 2018@16:54, Shuah Khan <shuah@kernel.org> wrote:
>> On 04/18/2018 01:52 AM, Anders Roxell wrote:
>>> When overriding the 'clean' target make throws up warnings:
>>> Makefile:9: warning: overriding recipe for target 'clean'
>>> ../lib.mk:98: warning: ignoring old recipe for target 'clean'
>>>
>>> In current code we change from TEST_PROGS to TEST_GEN_PROGS and that
>>> does that we can remove the target 'clean' and 'all'.
>>>
>>> Fixes: 10924bc64487 ("selftests: move dnotify_test from Documentation/filesystems")
>>> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
>>> ---
>>>  tools/testing/selftests/filesystems/Makefile | 6 +-----
>>>  1 file changed, 1 insertion(+), 5 deletions(-)
>>>
>>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>>> index 427a401aae5c..a55ac3ac09ad 100644
>>> --- a/tools/testing/selftests/filesystems/Makefile
>>> +++ b/tools/testing/selftests/filesystems/Makefile
>>> @@ -1,9 +1,5 @@
>>>  # SPDX-License-Identifier: GPL-2.0
>>> -TEST_PROGS := dnotify_test devpts_pts
>>> +TEST_GEN_PROGS := dnotify_test devpts_pts
>>>  CFLAGS += -I../../../../usr/include/
>>> -all: $(TEST_PROGS)
>>>
>>>  include ../lib.mk
>>> -
>>> -clean:
>>> -     rm -fr $(TEST_PROGS)
>>>
>>
>> Hi Anders,
>>
>> Michael sent in a patch to fix the problem already. It is in linux-kselftest fixes
>> branch for 4.17-rc2
>>
>> Classifying dnotify_test to TEST_GEN_PROGS_EXTENDED as Michael is the correct way
>> to handle this problem. It allows the test to be built and installed and it won't
>> be run in the main kselftest run.
>
> Why don't we want to run them in the main kselftest run?
> Is the rationale documented somewhere/somehow?

Think I found the rationale documented in the changelog [1].

What do you think about adding a variable to this test saying run for
xx minutes and if it hasn't
crashed, consider it as a passed test ?

Cheers,
Anders
[1] https://patchwork.kernel.org/patch/10332365/

> If they are long running tests or intrusive tests, can we document
> with a printout like:
> === Test ${foo} - SKIPPED (${short_rationale}) ===
> === Test dnotify_test - SKIPPED (long run) ===
> === Test devpts_pts - SKIPPED (intrusive run) ===
>
> Should there be a variable to turn them on from the main kselftest run?
>
> Cheers,
> Anders
>
>>
>> thanks,
>> -- Shuah
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header
  2018-04-18  7:52 ` anders.roxell
  (?)
@ 2018-05-02 14:05   ` christian.brauner
  -1 siblings, 0 replies; 27+ messages in thread
From: Christian Brauner @ 2018-05-02 14:05 UTC (permalink / raw)
  To: Anders Roxell; +Cc: shuah, Linux Kernel Mailing List, linux-kselftest

On Wed, Apr 18, 2018 at 09:52:55AM +0200, Anders Roxell wrote:
> We were picking up the wrong header should use asm/ioctls.h form the kernel
> and not the header from the system (sys/ioctl.h). In the current code we
> added the correct include and we added the kernel headers path to the CFLAGS.
>
> Fixes: ce290a19609d ("selftests: add devpts selftests")
> Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
> ---

Acked-by: Christian Brauner <christian.brauner@ubuntu.com>

Patch looks good to me.

I'm going to look into the ioctl() error.

Thanks!
Christian

>
> Hi,
>
> I've been running devpts_pts on a mainline kernel (4.16+git0+60cc43fc88) and



> the verify_invalid_ptmx_bind_mount() test failes with this failure:
>
> root@intel-core2-32:~# ./devpts_pts
> Failed to perform TIOCGPTPEER ioctl
>
> However, I'm still confused why I'm not able to get the test to pass.  Strace
> showes that -ENOENT return in the TIOCGPTPEER implementation in the
> kernel. I think the -ENOENT gets returned from this path
> devpts_mntget()->devpts_ptmx_path->path_pts().
>
> See the strace issue below:
> root@intel-core2-32:~# strace ./devpts_pts
> execve("./devpts_pts", ["./devpts_pts"], [/* 17 vars */]) = 0
> brk(NULL)                               = 0x5634e0092000
> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d338000
> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
> open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
> fstat(3, {st_mode=S_IFREG|0644, st_size=16726, ...}) = 0
> mmap(NULL, 16726, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f459d333000
> close(3)                                = 0
> open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
> read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\3\2\0\0\0\0\0"..., 832) = 832
> fstat(3, {st_mode=S_IFREG|0755, st_size=1681056, ...}) = 0
> mmap(NULL, 3787168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f459cd7b000
> mprotect(0x7f459cf0f000, 2093056, PROT_NONE) = 0
> mmap(0x7f459d10e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f459d10e000
> mmap(0x7f459d114000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f459d114000
> close(3)                                = 0
> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d331000
> arch_prctl(ARCH_SET_FS, 0x7f459d331700) = 0
> mprotect(0x7f459d10e000, 16384, PROT_READ) = 0
> mprotect(0x5634debe3000, 4096, PROT_READ) = 0
> mprotect(0x7f459d33a000, 4096, PROT_READ) = 0
> munmap(0x7f459d333000, 16726)           = 0
> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
> unshare(CLONE_NEWNS)                    = 0
> mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0
> mount("/dev/pts/ptmx", "/dev/ptmx", NULL, MS_BIND, NULL) = 0
> open("/dev/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
> ioctl(3, TIOCSPTLCK, [0])               = 0
> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4377
> wait4(4377, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4377
> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4377, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
> close(3)                                = 0
> close(4)                                = 0
> getpid()                                = 4376
> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
> mount("/dev/pts/ptmx", "/tmp/devpts_ptmx_Z6aEvy", NULL, MS_BIND, NULL) = 0
> close(3)                                = 0
> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
> ioctl(3, TIOCSPTLCK, [0])               = 0
> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = -1 ENOENT (No such file or directory)
> write(2, "Failed to perform TIOCGPTPEER io"..., 36Failed to perform TIOCGPTPEER ioctl
> ) = 36
> close(3)                                = 0
> umount2("/dev/pts", 0)                  = 0
> umount2("/dev/ptmx", 0)                 = 0
> mkdir("/tmp/devpts_fs_w22bR6", 0700)    = 0
> mount("devpts", "/tmp/devpts_fs_w22bR6", "devpts", MS_NOSUID|MS_NOEXEC, "newinstance,ptmxmode=0666,mode=0"...) = 0
> open("/tmp/devpts_fs_w22bR6/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
> ioctl(3, TIOCSPTLCK, [0])               = 0
> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4378
> wait4(4378, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4378
> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4378, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
> close(3)                                = 0
> close(4)                                = 0
> unlink("/tmp/devpts_fs_w22bR6")         = -1 EISDIR (Is a directory)
> exit_group(0)                           = ?
> +++ exited with 0 +++
> root@intel-core2-32:~#
>
>  tools/testing/selftests/filesystems/Makefile     | 1 +
>  tools/testing/selftests/filesystems/devpts_pts.c | 2 +-
>  2 files changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
> index 4e6d09fb166f..427a401aae5c 100644
> --- a/tools/testing/selftests/filesystems/Makefile
> +++ b/tools/testing/selftests/filesystems/Makefile
> @@ -1,5 +1,6 @@
>  # SPDX-License-Identifier: GPL-2.0
>  TEST_PROGS := dnotify_test devpts_pts
> +CFLAGS += -I../../../../usr/include/
>  all: $(TEST_PROGS)
>
>  include ../lib.mk
> diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c
> index b9055e974289..79420b9d00c7 100644
> --- a/tools/testing/selftests/filesystems/devpts_pts.c
> +++ b/tools/testing/selftests/filesystems/devpts_pts.c
> @@ -8,7 +8,7 @@
>  #include <stdlib.h>
>  #include <string.h>
>  #include <unistd.h>
> -#include <sys/ioctl.h>
> +#include <asm/ioctls.h>
>  #include <sys/mount.h>
>  #include <sys/wait.h>
>
> --
> 2.11.0
>

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header
@ 2018-05-02 14:05   ` christian.brauner
  0 siblings, 0 replies; 27+ messages in thread
From: christian.brauner @ 2018-05-02 14:05 UTC (permalink / raw)


On Wed, Apr 18, 2018 at 09:52:55AM +0200, Anders Roxell wrote:
> We were picking up the wrong header should use asm/ioctls.h form the kernel
> and not the header from the system (sys/ioctl.h). In the current code we
> added the correct include and we added the kernel headers path to the CFLAGS.
>
> Fixes: ce290a19609d ("selftests: add devpts selftests")
> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
> ---

Acked-by: Christian Brauner <christian.brauner at ubuntu.com>

Patch looks good to me.

I'm going to look into the ioctl() error.

Thanks!
Christian

>
> Hi,
>
> I've been running devpts_pts on a mainline kernel (4.16+git0+60cc43fc88) and



> the verify_invalid_ptmx_bind_mount() test failes with this failure:
>
> root at intel-core2-32:~# ./devpts_pts
> Failed to perform TIOCGPTPEER ioctl
>
> However, I'm still confused why I'm not able to get the test to pass.  Strace
> showes that -ENOENT return in the TIOCGPTPEER implementation in the
> kernel. I think the -ENOENT gets returned from this path
> devpts_mntget()->devpts_ptmx_path->path_pts().
>
> See the strace issue below:
> root at intel-core2-32:~# strace ./devpts_pts
> execve("./devpts_pts", ["./devpts_pts"], [/* 17 vars */]) = 0
> brk(NULL)                               = 0x5634e0092000
> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d338000
> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
> open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
> fstat(3, {st_mode=S_IFREG|0644, st_size=16726, ...}) = 0
> mmap(NULL, 16726, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f459d333000
> close(3)                                = 0
> open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
> read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\3\2\0\0\0\0\0"..., 832) = 832
> fstat(3, {st_mode=S_IFREG|0755, st_size=1681056, ...}) = 0
> mmap(NULL, 3787168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f459cd7b000
> mprotect(0x7f459cf0f000, 2093056, PROT_NONE) = 0
> mmap(0x7f459d10e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f459d10e000
> mmap(0x7f459d114000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f459d114000
> close(3)                                = 0
> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d331000
> arch_prctl(ARCH_SET_FS, 0x7f459d331700) = 0
> mprotect(0x7f459d10e000, 16384, PROT_READ) = 0
> mprotect(0x5634debe3000, 4096, PROT_READ) = 0
> mprotect(0x7f459d33a000, 4096, PROT_READ) = 0
> munmap(0x7f459d333000, 16726)           = 0
> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
> unshare(CLONE_NEWNS)                    = 0
> mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0
> mount("/dev/pts/ptmx", "/dev/ptmx", NULL, MS_BIND, NULL) = 0
> open("/dev/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
> ioctl(3, TIOCSPTLCK, [0])               = 0
> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4377
> wait4(4377, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4377
> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4377, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
> close(3)                                = 0
> close(4)                                = 0
> getpid()                                = 4376
> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
> mount("/dev/pts/ptmx", "/tmp/devpts_ptmx_Z6aEvy", NULL, MS_BIND, NULL) = 0
> close(3)                                = 0
> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
> ioctl(3, TIOCSPTLCK, [0])               = 0
> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = -1 ENOENT (No such file or directory)
> write(2, "Failed to perform TIOCGPTPEER io"..., 36Failed to perform TIOCGPTPEER ioctl
> ) = 36
> close(3)                                = 0
> umount2("/dev/pts", 0)                  = 0
> umount2("/dev/ptmx", 0)                 = 0
> mkdir("/tmp/devpts_fs_w22bR6", 0700)    = 0
> mount("devpts", "/tmp/devpts_fs_w22bR6", "devpts", MS_NOSUID|MS_NOEXEC, "newinstance,ptmxmode=0666,mode=0"...) = 0
> open("/tmp/devpts_fs_w22bR6/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
> ioctl(3, TIOCSPTLCK, [0])               = 0
> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4378
> wait4(4378, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4378
> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4378, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
> close(3)                                = 0
> close(4)                                = 0
> unlink("/tmp/devpts_fs_w22bR6")         = -1 EISDIR (Is a directory)
> exit_group(0)                           = ?
> +++ exited with 0 +++
> root at intel-core2-32:~#
>
>  tools/testing/selftests/filesystems/Makefile     | 1 +
>  tools/testing/selftests/filesystems/devpts_pts.c | 2 +-
>  2 files changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
> index 4e6d09fb166f..427a401aae5c 100644
> --- a/tools/testing/selftests/filesystems/Makefile
> +++ b/tools/testing/selftests/filesystems/Makefile
> @@ -1,5 +1,6 @@
>  # SPDX-License-Identifier: GPL-2.0
>  TEST_PROGS := dnotify_test devpts_pts
> +CFLAGS += -I../../../../usr/include/
>  all: $(TEST_PROGS)
>
>  include ../lib.mk
> diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c
> index b9055e974289..79420b9d00c7 100644
> --- a/tools/testing/selftests/filesystems/devpts_pts.c
> +++ b/tools/testing/selftests/filesystems/devpts_pts.c
> @@ -8,7 +8,7 @@
>  #include <stdlib.h>
>  #include <string.h>
>  #include <unistd.h>
> -#include <sys/ioctl.h>
> +#include <asm/ioctls.h>
>  #include <sys/mount.h>
>  #include <sys/wait.h>
>
> --
> 2.11.0
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header
@ 2018-05-02 14:05   ` christian.brauner
  0 siblings, 0 replies; 27+ messages in thread
From: Christian Brauner @ 2018-05-02 14:05 UTC (permalink / raw)


On Wed, Apr 18, 2018@09:52:55AM +0200, Anders Roxell wrote:
> We were picking up the wrong header should use asm/ioctls.h form the kernel
> and not the header from the system (sys/ioctl.h). In the current code we
> added the correct include and we added the kernel headers path to the CFLAGS.
>
> Fixes: ce290a19609d ("selftests: add devpts selftests")
> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
> ---

Acked-by: Christian Brauner <christian.brauner at ubuntu.com>

Patch looks good to me.

I'm going to look into the ioctl() error.

Thanks!
Christian

>
> Hi,
>
> I've been running devpts_pts on a mainline kernel (4.16+git0+60cc43fc88) and



> the verify_invalid_ptmx_bind_mount() test failes with this failure:
>
> root at intel-core2-32:~# ./devpts_pts
> Failed to perform TIOCGPTPEER ioctl
>
> However, I'm still confused why I'm not able to get the test to pass.  Strace
> showes that -ENOENT return in the TIOCGPTPEER implementation in the
> kernel. I think the -ENOENT gets returned from this path
> devpts_mntget()->devpts_ptmx_path->path_pts().
>
> See the strace issue below:
> root at intel-core2-32:~# strace ./devpts_pts
> execve("./devpts_pts", ["./devpts_pts"], [/* 17 vars */]) = 0
> brk(NULL)                               = 0x5634e0092000
> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d338000
> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
> open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
> fstat(3, {st_mode=S_IFREG|0644, st_size=16726, ...}) = 0
> mmap(NULL, 16726, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f459d333000
> close(3)                                = 0
> open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
> read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\3\2\0\0\0\0\0"..., 832) = 832
> fstat(3, {st_mode=S_IFREG|0755, st_size=1681056, ...}) = 0
> mmap(NULL, 3787168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f459cd7b000
> mprotect(0x7f459cf0f000, 2093056, PROT_NONE) = 0
> mmap(0x7f459d10e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f459d10e000
> mmap(0x7f459d114000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f459d114000
> close(3)                                = 0
> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d331000
> arch_prctl(ARCH_SET_FS, 0x7f459d331700) = 0
> mprotect(0x7f459d10e000, 16384, PROT_READ) = 0
> mprotect(0x5634debe3000, 4096, PROT_READ) = 0
> mprotect(0x7f459d33a000, 4096, PROT_READ) = 0
> munmap(0x7f459d333000, 16726)           = 0
> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
> unshare(CLONE_NEWNS)                    = 0
> mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0
> mount("/dev/pts/ptmx", "/dev/ptmx", NULL, MS_BIND, NULL) = 0
> open("/dev/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
> ioctl(3, TIOCSPTLCK, [0])               = 0
> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4377
> wait4(4377, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4377
> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4377, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
> close(3)                                = 0
> close(4)                                = 0
> getpid()                                = 4376
> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
> mount("/dev/pts/ptmx", "/tmp/devpts_ptmx_Z6aEvy", NULL, MS_BIND, NULL) = 0
> close(3)                                = 0
> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
> ioctl(3, TIOCSPTLCK, [0])               = 0
> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = -1 ENOENT (No such file or directory)
> write(2, "Failed to perform TIOCGPTPEER io"..., 36Failed to perform TIOCGPTPEER ioctl
> ) = 36
> close(3)                                = 0
> umount2("/dev/pts", 0)                  = 0
> umount2("/dev/ptmx", 0)                 = 0
> mkdir("/tmp/devpts_fs_w22bR6", 0700)    = 0
> mount("devpts", "/tmp/devpts_fs_w22bR6", "devpts", MS_NOSUID|MS_NOEXEC, "newinstance,ptmxmode=0666,mode=0"...) = 0
> open("/tmp/devpts_fs_w22bR6/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
> ioctl(3, TIOCSPTLCK, [0])               = 0
> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4378
> wait4(4378, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4378
> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4378, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
> close(3)                                = 0
> close(4)                                = 0
> unlink("/tmp/devpts_fs_w22bR6")         = -1 EISDIR (Is a directory)
> exit_group(0)                           = ?
> +++ exited with 0 +++
> root at intel-core2-32:~#
>
>  tools/testing/selftests/filesystems/Makefile     | 1 +
>  tools/testing/selftests/filesystems/devpts_pts.c | 2 +-
>  2 files changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
> index 4e6d09fb166f..427a401aae5c 100644
> --- a/tools/testing/selftests/filesystems/Makefile
> +++ b/tools/testing/selftests/filesystems/Makefile
> @@ -1,5 +1,6 @@
>  # SPDX-License-Identifier: GPL-2.0
>  TEST_PROGS := dnotify_test devpts_pts
> +CFLAGS += -I../../../../usr/include/
>  all: $(TEST_PROGS)
>
>  include ../lib.mk
> diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c
> index b9055e974289..79420b9d00c7 100644
> --- a/tools/testing/selftests/filesystems/devpts_pts.c
> +++ b/tools/testing/selftests/filesystems/devpts_pts.c
> @@ -8,7 +8,7 @@
>  #include <stdlib.h>
>  #include <string.h>
>  #include <unistd.h>
> -#include <sys/ioctl.h>
> +#include <asm/ioctls.h>
>  #include <sys/mount.h>
>  #include <sys/wait.h>
>
> --
> 2.11.0
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header
  2018-05-02 14:05   ` christian.brauner
  (?)
@ 2018-05-04 19:42     ` shuah
  -1 siblings, 0 replies; 27+ messages in thread
From: Shuah Khan @ 2018-05-04 19:42 UTC (permalink / raw)
  To: Christian Brauner, Anders Roxell
  Cc: Linux Kernel Mailing List, linux-kselftest

On 05/02/2018 08:05 AM, Christian Brauner wrote:
> On Wed, Apr 18, 2018 at 09:52:55AM +0200, Anders Roxell wrote:
>> We were picking up the wrong header should use asm/ioctls.h form the kernel
>> and not the header from the system (sys/ioctl.h). In the current code we
>> added the correct include and we added the kernel headers path to the CFLAGS.
>>
>> Fixes: ce290a19609d ("selftests: add devpts selftests")
>> Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
>> ---
> 
> Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
> 
> Patch looks good to me.
> 
> I'm going to look into the ioctl() error.
> 
> Thanks!
> Christian
> 
>>
>> Hi,
>>
>> I've been running devpts_pts on a mainline kernel (4.16+git0+60cc43fc88) and
> 
> 
> 
>> the verify_invalid_ptmx_bind_mount() test failes with this failure:
>>
>> root@intel-core2-32:~# ./devpts_pts
>> Failed to perform TIOCGPTPEER ioctl
>>
>> However, I'm still confused why I'm not able to get the test to pass.  Strace
>> showes that -ENOENT return in the TIOCGPTPEER implementation in the
>> kernel. I think the -ENOENT gets returned from this path
>> devpts_mntget()->devpts_ptmx_path->path_pts().
>>
>> See the strace issue below:
>> root@intel-core2-32:~# strace ./devpts_pts
>> execve("./devpts_pts", ["./devpts_pts"], [/* 17 vars */]) = 0
>> brk(NULL)                               = 0x5634e0092000
>> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d338000
>> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
>> open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
>> fstat(3, {st_mode=S_IFREG|0644, st_size=16726, ...}) = 0
>> mmap(NULL, 16726, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f459d333000
>> close(3)                                = 0
>> open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
>> read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\3\2\0\0\0\0\0"..., 832) = 832
>> fstat(3, {st_mode=S_IFREG|0755, st_size=1681056, ...}) = 0
>> mmap(NULL, 3787168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f459cd7b000
>> mprotect(0x7f459cf0f000, 2093056, PROT_NONE) = 0
>> mmap(0x7f459d10e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f459d10e000
>> mmap(0x7f459d114000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f459d114000
>> close(3)                                = 0
>> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d331000
>> arch_prctl(ARCH_SET_FS, 0x7f459d331700) = 0
>> mprotect(0x7f459d10e000, 16384, PROT_READ) = 0
>> mprotect(0x5634debe3000, 4096, PROT_READ) = 0
>> mprotect(0x7f459d33a000, 4096, PROT_READ) = 0
>> munmap(0x7f459d333000, 16726)           = 0
>> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
>> unshare(CLONE_NEWNS)                    = 0
>> mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0
>> mount("/dev/pts/ptmx", "/dev/ptmx", NULL, MS_BIND, NULL) = 0
>> open("/dev/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>> ioctl(3, TIOCSPTLCK, [0])               = 0
>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
>> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4377
>> wait4(4377, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4377
>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4377, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
>> close(3)                                = 0
>> close(4)                                = 0
>> getpid()                                = 4376
>> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
>> mount("/dev/pts/ptmx", "/tmp/devpts_ptmx_Z6aEvy", NULL, MS_BIND, NULL) = 0
>> close(3)                                = 0
>> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>> ioctl(3, TIOCSPTLCK, [0])               = 0
>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = -1 ENOENT (No such file or directory)
>> write(2, "Failed to perform TIOCGPTPEER io"..., 36Failed to perform TIOCGPTPEER ioctl
>> ) = 36
>> close(3)                                = 0
>> umount2("/dev/pts", 0)                  = 0
>> umount2("/dev/ptmx", 0)                 = 0
>> mkdir("/tmp/devpts_fs_w22bR6", 0700)    = 0
>> mount("devpts", "/tmp/devpts_fs_w22bR6", "devpts", MS_NOSUID|MS_NOEXEC, "newinstance,ptmxmode=0666,mode=0"...) = 0
>> open("/tmp/devpts_fs_w22bR6/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>> ioctl(3, TIOCSPTLCK, [0])               = 0
>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
>> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4378
>> wait4(4378, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4378
>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4378, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
>> close(3)                                = 0
>> close(4)                                = 0
>> unlink("/tmp/devpts_fs_w22bR6")         = -1 EISDIR (Is a directory)
>> exit_group(0)                           = ?
>> +++ exited with 0 +++
>> root@intel-core2-32:~#
>>
>>  tools/testing/selftests/filesystems/Makefile     | 1 +
>>  tools/testing/selftests/filesystems/devpts_pts.c | 2 +-
>>  2 files changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>> index 4e6d09fb166f..427a401aae5c 100644
>> --- a/tools/testing/selftests/filesystems/Makefile
>> +++ b/tools/testing/selftests/filesystems/Makefile
>> @@ -1,5 +1,6 @@
>>  # SPDX-License-Identifier: GPL-2.0
>>  TEST_PROGS := dnotify_test devpts_pts
>> +CFLAGS += -I../../../../usr/include/
>>  all: $(TEST_PROGS)
>>
>>  include ../lib.mk
>> diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c
>> index b9055e974289..79420b9d00c7 100644
>> --- a/tools/testing/selftests/filesystems/devpts_pts.c
>> +++ b/tools/testing/selftests/filesystems/devpts_pts.c
>> @@ -8,7 +8,7 @@
>>  #include <stdlib.h>
>>  #include <string.h>
>>  #include <unistd.h>
>> -#include <sys/ioctl.h>
>> +#include <asm/ioctls.h>
>>  #include <sys/mount.h>
>>  #include <sys/wait.h>
>>
>> --
>> 2.11.0
>>
> 

Thanks. I will queue this up for 4.18-rc1

-- Shuah

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header
@ 2018-05-04 19:42     ` shuah
  0 siblings, 0 replies; 27+ messages in thread
From: shuah @ 2018-05-04 19:42 UTC (permalink / raw)


On 05/02/2018 08:05 AM, Christian Brauner wrote:
> On Wed, Apr 18, 2018 at 09:52:55AM +0200, Anders Roxell wrote:
>> We were picking up the wrong header should use asm/ioctls.h form the kernel
>> and not the header from the system (sys/ioctl.h). In the current code we
>> added the correct include and we added the kernel headers path to the CFLAGS.
>>
>> Fixes: ce290a19609d ("selftests: add devpts selftests")
>> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
>> ---
> 
> Acked-by: Christian Brauner <christian.brauner at ubuntu.com>
> 
> Patch looks good to me.
> 
> I'm going to look into the ioctl() error.
> 
> Thanks!
> Christian
> 
>>
>> Hi,
>>
>> I've been running devpts_pts on a mainline kernel (4.16+git0+60cc43fc88) and
> 
> 
> 
>> the verify_invalid_ptmx_bind_mount() test failes with this failure:
>>
>> root at intel-core2-32:~# ./devpts_pts
>> Failed to perform TIOCGPTPEER ioctl
>>
>> However, I'm still confused why I'm not able to get the test to pass.  Strace
>> showes that -ENOENT return in the TIOCGPTPEER implementation in the
>> kernel. I think the -ENOENT gets returned from this path
>> devpts_mntget()->devpts_ptmx_path->path_pts().
>>
>> See the strace issue below:
>> root at intel-core2-32:~# strace ./devpts_pts
>> execve("./devpts_pts", ["./devpts_pts"], [/* 17 vars */]) = 0
>> brk(NULL)                               = 0x5634e0092000
>> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d338000
>> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
>> open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
>> fstat(3, {st_mode=S_IFREG|0644, st_size=16726, ...}) = 0
>> mmap(NULL, 16726, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f459d333000
>> close(3)                                = 0
>> open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
>> read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\3\2\0\0\0\0\0"..., 832) = 832
>> fstat(3, {st_mode=S_IFREG|0755, st_size=1681056, ...}) = 0
>> mmap(NULL, 3787168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f459cd7b000
>> mprotect(0x7f459cf0f000, 2093056, PROT_NONE) = 0
>> mmap(0x7f459d10e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f459d10e000
>> mmap(0x7f459d114000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f459d114000
>> close(3)                                = 0
>> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d331000
>> arch_prctl(ARCH_SET_FS, 0x7f459d331700) = 0
>> mprotect(0x7f459d10e000, 16384, PROT_READ) = 0
>> mprotect(0x5634debe3000, 4096, PROT_READ) = 0
>> mprotect(0x7f459d33a000, 4096, PROT_READ) = 0
>> munmap(0x7f459d333000, 16726)           = 0
>> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
>> unshare(CLONE_NEWNS)                    = 0
>> mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0
>> mount("/dev/pts/ptmx", "/dev/ptmx", NULL, MS_BIND, NULL) = 0
>> open("/dev/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>> ioctl(3, TIOCSPTLCK, [0])               = 0
>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
>> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4377
>> wait4(4377, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4377
>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4377, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
>> close(3)                                = 0
>> close(4)                                = 0
>> getpid()                                = 4376
>> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
>> mount("/dev/pts/ptmx", "/tmp/devpts_ptmx_Z6aEvy", NULL, MS_BIND, NULL) = 0
>> close(3)                                = 0
>> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>> ioctl(3, TIOCSPTLCK, [0])               = 0
>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = -1 ENOENT (No such file or directory)
>> write(2, "Failed to perform TIOCGPTPEER io"..., 36Failed to perform TIOCGPTPEER ioctl
>> ) = 36
>> close(3)                                = 0
>> umount2("/dev/pts", 0)                  = 0
>> umount2("/dev/ptmx", 0)                 = 0
>> mkdir("/tmp/devpts_fs_w22bR6", 0700)    = 0
>> mount("devpts", "/tmp/devpts_fs_w22bR6", "devpts", MS_NOSUID|MS_NOEXEC, "newinstance,ptmxmode=0666,mode=0"...) = 0
>> open("/tmp/devpts_fs_w22bR6/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>> ioctl(3, TIOCSPTLCK, [0])               = 0
>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
>> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4378
>> wait4(4378, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4378
>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4378, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
>> close(3)                                = 0
>> close(4)                                = 0
>> unlink("/tmp/devpts_fs_w22bR6")         = -1 EISDIR (Is a directory)
>> exit_group(0)                           = ?
>> +++ exited with 0 +++
>> root at intel-core2-32:~#
>>
>>  tools/testing/selftests/filesystems/Makefile     | 1 +
>>  tools/testing/selftests/filesystems/devpts_pts.c | 2 +-
>>  2 files changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>> index 4e6d09fb166f..427a401aae5c 100644
>> --- a/tools/testing/selftests/filesystems/Makefile
>> +++ b/tools/testing/selftests/filesystems/Makefile
>> @@ -1,5 +1,6 @@
>>  # SPDX-License-Identifier: GPL-2.0
>>  TEST_PROGS := dnotify_test devpts_pts
>> +CFLAGS += -I../../../../usr/include/
>>  all: $(TEST_PROGS)
>>
>>  include ../lib.mk
>> diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c
>> index b9055e974289..79420b9d00c7 100644
>> --- a/tools/testing/selftests/filesystems/devpts_pts.c
>> +++ b/tools/testing/selftests/filesystems/devpts_pts.c
>> @@ -8,7 +8,7 @@
>>  #include <stdlib.h>
>>  #include <string.h>
>>  #include <unistd.h>
>> -#include <sys/ioctl.h>
>> +#include <asm/ioctls.h>
>>  #include <sys/mount.h>
>>  #include <sys/wait.h>
>>
>> --
>> 2.11.0
>>
> 

Thanks. I will queue this up for 4.18-rc1

-- Shuah
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header
@ 2018-05-04 19:42     ` shuah
  0 siblings, 0 replies; 27+ messages in thread
From: Shuah Khan @ 2018-05-04 19:42 UTC (permalink / raw)


On 05/02/2018 08:05 AM, Christian Brauner wrote:
> On Wed, Apr 18, 2018@09:52:55AM +0200, Anders Roxell wrote:
>> We were picking up the wrong header should use asm/ioctls.h form the kernel
>> and not the header from the system (sys/ioctl.h). In the current code we
>> added the correct include and we added the kernel headers path to the CFLAGS.
>>
>> Fixes: ce290a19609d ("selftests: add devpts selftests")
>> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
>> ---
> 
> Acked-by: Christian Brauner <christian.brauner at ubuntu.com>
> 
> Patch looks good to me.
> 
> I'm going to look into the ioctl() error.
> 
> Thanks!
> Christian
> 
>>
>> Hi,
>>
>> I've been running devpts_pts on a mainline kernel (4.16+git0+60cc43fc88) and
> 
> 
> 
>> the verify_invalid_ptmx_bind_mount() test failes with this failure:
>>
>> root at intel-core2-32:~# ./devpts_pts
>> Failed to perform TIOCGPTPEER ioctl
>>
>> However, I'm still confused why I'm not able to get the test to pass.  Strace
>> showes that -ENOENT return in the TIOCGPTPEER implementation in the
>> kernel. I think the -ENOENT gets returned from this path
>> devpts_mntget()->devpts_ptmx_path->path_pts().
>>
>> See the strace issue below:
>> root at intel-core2-32:~# strace ./devpts_pts
>> execve("./devpts_pts", ["./devpts_pts"], [/* 17 vars */]) = 0
>> brk(NULL)                               = 0x5634e0092000
>> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d338000
>> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
>> open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
>> fstat(3, {st_mode=S_IFREG|0644, st_size=16726, ...}) = 0
>> mmap(NULL, 16726, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f459d333000
>> close(3)                                = 0
>> open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
>> read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\3\2\0\0\0\0\0"..., 832) = 832
>> fstat(3, {st_mode=S_IFREG|0755, st_size=1681056, ...}) = 0
>> mmap(NULL, 3787168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f459cd7b000
>> mprotect(0x7f459cf0f000, 2093056, PROT_NONE) = 0
>> mmap(0x7f459d10e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f459d10e000
>> mmap(0x7f459d114000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f459d114000
>> close(3)                                = 0
>> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d331000
>> arch_prctl(ARCH_SET_FS, 0x7f459d331700) = 0
>> mprotect(0x7f459d10e000, 16384, PROT_READ) = 0
>> mprotect(0x5634debe3000, 4096, PROT_READ) = 0
>> mprotect(0x7f459d33a000, 4096, PROT_READ) = 0
>> munmap(0x7f459d333000, 16726)           = 0
>> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
>> unshare(CLONE_NEWNS)                    = 0
>> mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0
>> mount("/dev/pts/ptmx", "/dev/ptmx", NULL, MS_BIND, NULL) = 0
>> open("/dev/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>> ioctl(3, TIOCSPTLCK, [0])               = 0
>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
>> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4377
>> wait4(4377, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4377
>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4377, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
>> close(3)                                = 0
>> close(4)                                = 0
>> getpid()                                = 4376
>> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
>> mount("/dev/pts/ptmx", "/tmp/devpts_ptmx_Z6aEvy", NULL, MS_BIND, NULL) = 0
>> close(3)                                = 0
>> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>> ioctl(3, TIOCSPTLCK, [0])               = 0
>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = -1 ENOENT (No such file or directory)
>> write(2, "Failed to perform TIOCGPTPEER io"..., 36Failed to perform TIOCGPTPEER ioctl
>> ) = 36
>> close(3)                                = 0
>> umount2("/dev/pts", 0)                  = 0
>> umount2("/dev/ptmx", 0)                 = 0
>> mkdir("/tmp/devpts_fs_w22bR6", 0700)    = 0
>> mount("devpts", "/tmp/devpts_fs_w22bR6", "devpts", MS_NOSUID|MS_NOEXEC, "newinstance,ptmxmode=0666,mode=0"...) = 0
>> open("/tmp/devpts_fs_w22bR6/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>> ioctl(3, TIOCSPTLCK, [0])               = 0
>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
>> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4378
>> wait4(4378, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4378
>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4378, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
>> close(3)                                = 0
>> close(4)                                = 0
>> unlink("/tmp/devpts_fs_w22bR6")         = -1 EISDIR (Is a directory)
>> exit_group(0)                           = ?
>> +++ exited with 0 +++
>> root at intel-core2-32:~#
>>
>>  tools/testing/selftests/filesystems/Makefile     | 1 +
>>  tools/testing/selftests/filesystems/devpts_pts.c | 2 +-
>>  2 files changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>> index 4e6d09fb166f..427a401aae5c 100644
>> --- a/tools/testing/selftests/filesystems/Makefile
>> +++ b/tools/testing/selftests/filesystems/Makefile
>> @@ -1,5 +1,6 @@
>>  # SPDX-License-Identifier: GPL-2.0
>>  TEST_PROGS := dnotify_test devpts_pts
>> +CFLAGS += -I../../../../usr/include/
>>  all: $(TEST_PROGS)
>>
>>  include ../lib.mk
>> diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c
>> index b9055e974289..79420b9d00c7 100644
>> --- a/tools/testing/selftests/filesystems/devpts_pts.c
>> +++ b/tools/testing/selftests/filesystems/devpts_pts.c
>> @@ -8,7 +8,7 @@
>>  #include <stdlib.h>
>>  #include <string.h>
>>  #include <unistd.h>
>> -#include <sys/ioctl.h>
>> +#include <asm/ioctls.h>
>>  #include <sys/mount.h>
>>  #include <sys/wait.h>
>>
>> --
>> 2.11.0
>>
> 

Thanks. I will queue this up for 4.18-rc1

-- Shuah
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header
  2018-05-04 19:42     ` shuah
  (?)
@ 2018-05-10 17:26       ` shuah
  -1 siblings, 0 replies; 27+ messages in thread
From: Shuah Khan @ 2018-05-10 17:26 UTC (permalink / raw)
  To: Christian Brauner, Anders Roxell
  Cc: Linux Kernel Mailing List, linux-kselftest, Shuah Khan

On 05/04/2018 01:42 PM, Shuah Khan wrote:
> On 05/02/2018 08:05 AM, Christian Brauner wrote:
>> On Wed, Apr 18, 2018 at 09:52:55AM +0200, Anders Roxell wrote:
>>> We were picking up the wrong header should use asm/ioctls.h form the kernel
>>> and not the header from the system (sys/ioctl.h). In the current code we
>>> added the correct include and we added the kernel headers path to the CFLAGS.
>>>
>>> Fixes: ce290a19609d ("selftests: add devpts selftests")
>>> Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
>>> ---
>>
>> Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
>>
>> Patch looks good to me.
>>
>> I'm going to look into the ioctl() error.
>>
>> Thanks!
>> Christian
>>
>>>
>>> Hi,
>>>
>>> I've been running devpts_pts on a mainline kernel (4.16+git0+60cc43fc88) and
>>
>>
>>
>>> the verify_invalid_ptmx_bind_mount() test failes with this failure:
>>>
>>> root@intel-core2-32:~# ./devpts_pts
>>> Failed to perform TIOCGPTPEER ioctl
>>>
>>> However, I'm still confused why I'm not able to get the test to pass.  Strace
>>> showes that -ENOENT return in the TIOCGPTPEER implementation in the
>>> kernel. I think the -ENOENT gets returned from this path
>>> devpts_mntget()->devpts_ptmx_path->path_pts().
>>>
>>> See the strace issue below:
>>> root@intel-core2-32:~# strace ./devpts_pts
>>> execve("./devpts_pts", ["./devpts_pts"], [/* 17 vars */]) = 0
>>> brk(NULL)                               = 0x5634e0092000
>>> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d338000
>>> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
>>> open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
>>> fstat(3, {st_mode=S_IFREG|0644, st_size=16726, ...}) = 0
>>> mmap(NULL, 16726, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f459d333000
>>> close(3)                                = 0
>>> open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
>>> read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\3\2\0\0\0\0\0"..., 832) = 832
>>> fstat(3, {st_mode=S_IFREG|0755, st_size=1681056, ...}) = 0
>>> mmap(NULL, 3787168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f459cd7b000
>>> mprotect(0x7f459cf0f000, 2093056, PROT_NONE) = 0
>>> mmap(0x7f459d10e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f459d10e000
>>> mmap(0x7f459d114000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f459d114000
>>> close(3)                                = 0
>>> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d331000
>>> arch_prctl(ARCH_SET_FS, 0x7f459d331700) = 0
>>> mprotect(0x7f459d10e000, 16384, PROT_READ) = 0
>>> mprotect(0x5634debe3000, 4096, PROT_READ) = 0
>>> mprotect(0x7f459d33a000, 4096, PROT_READ) = 0
>>> munmap(0x7f459d333000, 16726)           = 0
>>> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
>>> unshare(CLONE_NEWNS)                    = 0
>>> mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0
>>> mount("/dev/pts/ptmx", "/dev/ptmx", NULL, MS_BIND, NULL) = 0
>>> open("/dev/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>>> ioctl(3, TIOCSPTLCK, [0])               = 0
>>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
>>> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4377
>>> wait4(4377, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4377
>>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4377, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
>>> close(3)                                = 0
>>> close(4)                                = 0
>>> getpid()                                = 4376
>>> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
>>> mount("/dev/pts/ptmx", "/tmp/devpts_ptmx_Z6aEvy", NULL, MS_BIND, NULL) = 0
>>> close(3)                                = 0
>>> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>>> ioctl(3, TIOCSPTLCK, [0])               = 0
>>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = -1 ENOENT (No such file or directory)
>>> write(2, "Failed to perform TIOCGPTPEER io"..., 36Failed to perform TIOCGPTPEER ioctl
>>> ) = 36
>>> close(3)                                = 0
>>> umount2("/dev/pts", 0)                  = 0
>>> umount2("/dev/ptmx", 0)                 = 0
>>> mkdir("/tmp/devpts_fs_w22bR6", 0700)    = 0
>>> mount("devpts", "/tmp/devpts_fs_w22bR6", "devpts", MS_NOSUID|MS_NOEXEC, "newinstance,ptmxmode=0666,mode=0"...) = 0
>>> open("/tmp/devpts_fs_w22bR6/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>>> ioctl(3, TIOCSPTLCK, [0])               = 0
>>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
>>> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4378
>>> wait4(4378, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4378
>>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4378, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
>>> close(3)                                = 0
>>> close(4)                                = 0
>>> unlink("/tmp/devpts_fs_w22bR6")         = -1 EISDIR (Is a directory)
>>> exit_group(0)                           = ?
>>> +++ exited with 0 +++
>>> root@intel-core2-32:~#
>>>
>>>  tools/testing/selftests/filesystems/Makefile     | 1 +
>>>  tools/testing/selftests/filesystems/devpts_pts.c | 2 +-
>>>  2 files changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>>> index 4e6d09fb166f..427a401aae5c 100644
>>> --- a/tools/testing/selftests/filesystems/Makefile
>>> +++ b/tools/testing/selftests/filesystems/Makefile
>>> @@ -1,5 +1,6 @@
>>>  # SPDX-License-Identifier: GPL-2.0
>>>  TEST_PROGS := dnotify_test devpts_pts
>>> +CFLAGS += -I../../../../usr/include/
>>>  all: $(TEST_PROGS)
>>>
>>>  include ../lib.mk
>>> diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c
>>> index b9055e974289..79420b9d00c7 100644
>>> --- a/tools/testing/selftests/filesystems/devpts_pts.c
>>> +++ b/tools/testing/selftests/filesystems/devpts_pts.c
>>> @@ -8,7 +8,7 @@
>>>  #include <stdlib.h>
>>>  #include <string.h>
>>>  #include <unistd.h>
>>> -#include <sys/ioctl.h>
>>> +#include <asm/ioctls.h>
>>>  #include <sys/mount.h>
>>>  #include <sys/wait.h>
>>>
>>> --
>>> 2.11.0
>>>
>>
> 
> Thanks. I will queue this up for 4.18-rc1
> 
> -- Shuah
> 

Applied to linux-kselftest next for 4.18-rc1.

thanks,
-- Shuah

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header
@ 2018-05-10 17:26       ` shuah
  0 siblings, 0 replies; 27+ messages in thread
From: shuah @ 2018-05-10 17:26 UTC (permalink / raw)


On 05/04/2018 01:42 PM, Shuah Khan wrote:
> On 05/02/2018 08:05 AM, Christian Brauner wrote:
>> On Wed, Apr 18, 2018 at 09:52:55AM +0200, Anders Roxell wrote:
>>> We were picking up the wrong header should use asm/ioctls.h form the kernel
>>> and not the header from the system (sys/ioctl.h). In the current code we
>>> added the correct include and we added the kernel headers path to the CFLAGS.
>>>
>>> Fixes: ce290a19609d ("selftests: add devpts selftests")
>>> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
>>> ---
>>
>> Acked-by: Christian Brauner <christian.brauner at ubuntu.com>
>>
>> Patch looks good to me.
>>
>> I'm going to look into the ioctl() error.
>>
>> Thanks!
>> Christian
>>
>>>
>>> Hi,
>>>
>>> I've been running devpts_pts on a mainline kernel (4.16+git0+60cc43fc88) and
>>
>>
>>
>>> the verify_invalid_ptmx_bind_mount() test failes with this failure:
>>>
>>> root at intel-core2-32:~# ./devpts_pts
>>> Failed to perform TIOCGPTPEER ioctl
>>>
>>> However, I'm still confused why I'm not able to get the test to pass.  Strace
>>> showes that -ENOENT return in the TIOCGPTPEER implementation in the
>>> kernel. I think the -ENOENT gets returned from this path
>>> devpts_mntget()->devpts_ptmx_path->path_pts().
>>>
>>> See the strace issue below:
>>> root at intel-core2-32:~# strace ./devpts_pts
>>> execve("./devpts_pts", ["./devpts_pts"], [/* 17 vars */]) = 0
>>> brk(NULL)                               = 0x5634e0092000
>>> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d338000
>>> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
>>> open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
>>> fstat(3, {st_mode=S_IFREG|0644, st_size=16726, ...}) = 0
>>> mmap(NULL, 16726, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f459d333000
>>> close(3)                                = 0
>>> open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
>>> read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\3\2\0\0\0\0\0"..., 832) = 832
>>> fstat(3, {st_mode=S_IFREG|0755, st_size=1681056, ...}) = 0
>>> mmap(NULL, 3787168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f459cd7b000
>>> mprotect(0x7f459cf0f000, 2093056, PROT_NONE) = 0
>>> mmap(0x7f459d10e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f459d10e000
>>> mmap(0x7f459d114000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f459d114000
>>> close(3)                                = 0
>>> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d331000
>>> arch_prctl(ARCH_SET_FS, 0x7f459d331700) = 0
>>> mprotect(0x7f459d10e000, 16384, PROT_READ) = 0
>>> mprotect(0x5634debe3000, 4096, PROT_READ) = 0
>>> mprotect(0x7f459d33a000, 4096, PROT_READ) = 0
>>> munmap(0x7f459d333000, 16726)           = 0
>>> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
>>> unshare(CLONE_NEWNS)                    = 0
>>> mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0
>>> mount("/dev/pts/ptmx", "/dev/ptmx", NULL, MS_BIND, NULL) = 0
>>> open("/dev/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>>> ioctl(3, TIOCSPTLCK, [0])               = 0
>>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
>>> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4377
>>> wait4(4377, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4377
>>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4377, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
>>> close(3)                                = 0
>>> close(4)                                = 0
>>> getpid()                                = 4376
>>> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
>>> mount("/dev/pts/ptmx", "/tmp/devpts_ptmx_Z6aEvy", NULL, MS_BIND, NULL) = 0
>>> close(3)                                = 0
>>> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>>> ioctl(3, TIOCSPTLCK, [0])               = 0
>>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = -1 ENOENT (No such file or directory)
>>> write(2, "Failed to perform TIOCGPTPEER io"..., 36Failed to perform TIOCGPTPEER ioctl
>>> ) = 36
>>> close(3)                                = 0
>>> umount2("/dev/pts", 0)                  = 0
>>> umount2("/dev/ptmx", 0)                 = 0
>>> mkdir("/tmp/devpts_fs_w22bR6", 0700)    = 0
>>> mount("devpts", "/tmp/devpts_fs_w22bR6", "devpts", MS_NOSUID|MS_NOEXEC, "newinstance,ptmxmode=0666,mode=0"...) = 0
>>> open("/tmp/devpts_fs_w22bR6/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>>> ioctl(3, TIOCSPTLCK, [0])               = 0
>>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
>>> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4378
>>> wait4(4378, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4378
>>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4378, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
>>> close(3)                                = 0
>>> close(4)                                = 0
>>> unlink("/tmp/devpts_fs_w22bR6")         = -1 EISDIR (Is a directory)
>>> exit_group(0)                           = ?
>>> +++ exited with 0 +++
>>> root at intel-core2-32:~#
>>>
>>>  tools/testing/selftests/filesystems/Makefile     | 1 +
>>>  tools/testing/selftests/filesystems/devpts_pts.c | 2 +-
>>>  2 files changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>>> index 4e6d09fb166f..427a401aae5c 100644
>>> --- a/tools/testing/selftests/filesystems/Makefile
>>> +++ b/tools/testing/selftests/filesystems/Makefile
>>> @@ -1,5 +1,6 @@
>>>  # SPDX-License-Identifier: GPL-2.0
>>>  TEST_PROGS := dnotify_test devpts_pts
>>> +CFLAGS += -I../../../../usr/include/
>>>  all: $(TEST_PROGS)
>>>
>>>  include ../lib.mk
>>> diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c
>>> index b9055e974289..79420b9d00c7 100644
>>> --- a/tools/testing/selftests/filesystems/devpts_pts.c
>>> +++ b/tools/testing/selftests/filesystems/devpts_pts.c
>>> @@ -8,7 +8,7 @@
>>>  #include <stdlib.h>
>>>  #include <string.h>
>>>  #include <unistd.h>
>>> -#include <sys/ioctl.h>
>>> +#include <asm/ioctls.h>
>>>  #include <sys/mount.h>
>>>  #include <sys/wait.h>
>>>
>>> --
>>> 2.11.0
>>>
>>
> 
> Thanks. I will queue this up for 4.18-rc1
> 
> -- Shuah
> 

Applied to linux-kselftest next for 4.18-rc1.

thanks,
-- Shuah
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header
@ 2018-05-10 17:26       ` shuah
  0 siblings, 0 replies; 27+ messages in thread
From: Shuah Khan @ 2018-05-10 17:26 UTC (permalink / raw)


On 05/04/2018 01:42 PM, Shuah Khan wrote:
> On 05/02/2018 08:05 AM, Christian Brauner wrote:
>> On Wed, Apr 18, 2018@09:52:55AM +0200, Anders Roxell wrote:
>>> We were picking up the wrong header should use asm/ioctls.h form the kernel
>>> and not the header from the system (sys/ioctl.h). In the current code we
>>> added the correct include and we added the kernel headers path to the CFLAGS.
>>>
>>> Fixes: ce290a19609d ("selftests: add devpts selftests")
>>> Signed-off-by: Anders Roxell <anders.roxell at linaro.org>
>>> ---
>>
>> Acked-by: Christian Brauner <christian.brauner at ubuntu.com>
>>
>> Patch looks good to me.
>>
>> I'm going to look into the ioctl() error.
>>
>> Thanks!
>> Christian
>>
>>>
>>> Hi,
>>>
>>> I've been running devpts_pts on a mainline kernel (4.16+git0+60cc43fc88) and
>>
>>
>>
>>> the verify_invalid_ptmx_bind_mount() test failes with this failure:
>>>
>>> root at intel-core2-32:~# ./devpts_pts
>>> Failed to perform TIOCGPTPEER ioctl
>>>
>>> However, I'm still confused why I'm not able to get the test to pass.  Strace
>>> showes that -ENOENT return in the TIOCGPTPEER implementation in the
>>> kernel. I think the -ENOENT gets returned from this path
>>> devpts_mntget()->devpts_ptmx_path->path_pts().
>>>
>>> See the strace issue below:
>>> root at intel-core2-32:~# strace ./devpts_pts
>>> execve("./devpts_pts", ["./devpts_pts"], [/* 17 vars */]) = 0
>>> brk(NULL)                               = 0x5634e0092000
>>> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d338000
>>> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
>>> open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
>>> fstat(3, {st_mode=S_IFREG|0644, st_size=16726, ...}) = 0
>>> mmap(NULL, 16726, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f459d333000
>>> close(3)                                = 0
>>> open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
>>> read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\3\2\0\0\0\0\0"..., 832) = 832
>>> fstat(3, {st_mode=S_IFREG|0755, st_size=1681056, ...}) = 0
>>> mmap(NULL, 3787168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f459cd7b000
>>> mprotect(0x7f459cf0f000, 2093056, PROT_NONE) = 0
>>> mmap(0x7f459d10e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f459d10e000
>>> mmap(0x7f459d114000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f459d114000
>>> close(3)                                = 0
>>> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f459d331000
>>> arch_prctl(ARCH_SET_FS, 0x7f459d331700) = 0
>>> mprotect(0x7f459d10e000, 16384, PROT_READ) = 0
>>> mprotect(0x5634debe3000, 4096, PROT_READ) = 0
>>> mprotect(0x7f459d33a000, 4096, PROT_READ) = 0
>>> munmap(0x7f459d333000, 16726)           = 0
>>> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
>>> unshare(CLONE_NEWNS)                    = 0
>>> mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0
>>> mount("/dev/pts/ptmx", "/dev/ptmx", NULL, MS_BIND, NULL) = 0
>>> open("/dev/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>>> ioctl(3, TIOCSPTLCK, [0])               = 0
>>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
>>> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4377
>>> wait4(4377, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4377
>>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4377, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
>>> close(3)                                = 0
>>> close(4)                                = 0
>>> getpid()                                = 4376
>>> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
>>> mount("/dev/pts/ptmx", "/tmp/devpts_ptmx_Z6aEvy", NULL, MS_BIND, NULL) = 0
>>> close(3)                                = 0
>>> open("/tmp/devpts_ptmx_Z6aEvy", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>>> ioctl(3, TIOCSPTLCK, [0])               = 0
>>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = -1 ENOENT (No such file or directory)
>>> write(2, "Failed to perform TIOCGPTPEER io"..., 36Failed to perform TIOCGPTPEER ioctl
>>> ) = 36
>>> close(3)                                = 0
>>> umount2("/dev/pts", 0)                  = 0
>>> umount2("/dev/ptmx", 0)                 = 0
>>> mkdir("/tmp/devpts_fs_w22bR6", 0700)    = 0
>>> mount("devpts", "/tmp/devpts_fs_w22bR6", "devpts", MS_NOSUID|MS_NOEXEC, "newinstance,ptmxmode=0666,mode=0"...) = 0
>>> open("/tmp/devpts_fs_w22bR6/ptmx", O_RDWR|O_NOCTTY|O_CLOEXEC) = 3
>>> ioctl(3, TIOCSPTLCK, [0])               = 0
>>> ioctl(3, _IOC(0, 0x54, 0x41, 0x00), 0x80102) = 4
>>> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f459d3319d0) = 4378
>>> wait4(4378, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4378
>>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4378, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
>>> close(3)                                = 0
>>> close(4)                                = 0
>>> unlink("/tmp/devpts_fs_w22bR6")         = -1 EISDIR (Is a directory)
>>> exit_group(0)                           = ?
>>> +++ exited with 0 +++
>>> root at intel-core2-32:~#
>>>
>>>  tools/testing/selftests/filesystems/Makefile     | 1 +
>>>  tools/testing/selftests/filesystems/devpts_pts.c | 2 +-
>>>  2 files changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/tools/testing/selftests/filesystems/Makefile b/tools/testing/selftests/filesystems/Makefile
>>> index 4e6d09fb166f..427a401aae5c 100644
>>> --- a/tools/testing/selftests/filesystems/Makefile
>>> +++ b/tools/testing/selftests/filesystems/Makefile
>>> @@ -1,5 +1,6 @@
>>>  # SPDX-License-Identifier: GPL-2.0
>>>  TEST_PROGS := dnotify_test devpts_pts
>>> +CFLAGS += -I../../../../usr/include/
>>>  all: $(TEST_PROGS)
>>>
>>>  include ../lib.mk
>>> diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c
>>> index b9055e974289..79420b9d00c7 100644
>>> --- a/tools/testing/selftests/filesystems/devpts_pts.c
>>> +++ b/tools/testing/selftests/filesystems/devpts_pts.c
>>> @@ -8,7 +8,7 @@
>>>  #include <stdlib.h>
>>>  #include <string.h>
>>>  #include <unistd.h>
>>> -#include <sys/ioctl.h>
>>> +#include <asm/ioctls.h>
>>>  #include <sys/mount.h>
>>>  #include <sys/wait.h>
>>>
>>> --
>>> 2.11.0
>>>
>>
> 
> Thanks. I will queue this up for 4.18-rc1
> 
> -- Shuah
> 

Applied to linux-kselftest next for 4.18-rc1.

thanks,
-- Shuah
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2018-05-10 17:26 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-18  7:52 [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header Anders Roxell
2018-04-18  7:52 ` Anders Roxell
2018-04-18  7:52 ` anders.roxell
2018-04-18  7:52 ` [PATCH 2/2] selftests/filesystems: remove Makefile warning Anders Roxell
2018-04-18  7:52   ` Anders Roxell
2018-04-18  7:52   ` anders.roxell
2018-04-18 14:54   ` Shuah Khan
2018-04-18 14:54     ` Shuah Khan
2018-04-18 14:54     ` shuah
2018-04-18 20:32     ` Anders Roxell
2018-04-18 20:32       ` Anders Roxell
2018-04-18 20:32       ` anders.roxell
2018-04-19  8:22     ` Anders Roxell
2018-04-19  8:22       ` Anders Roxell
2018-04-19  8:22       ` anders.roxell
2018-04-19  8:56       ` Anders Roxell
2018-04-19  8:56         ` Anders Roxell
2018-04-19  8:56         ` anders.roxell
2018-05-02 14:05 ` [PATCH 1/2] selftests/filesystems: devpts_pts included wrong header Christian Brauner
2018-05-02 14:05   ` Christian Brauner
2018-05-02 14:05   ` christian.brauner
2018-05-04 19:42   ` Shuah Khan
2018-05-04 19:42     ` Shuah Khan
2018-05-04 19:42     ` shuah
2018-05-10 17:26     ` Shuah Khan
2018-05-10 17:26       ` Shuah Khan
2018-05-10 17:26       ` shuah

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.