The devpts_pts selftest has an ifdef in case an architecture does not
define TIOCGPTPEER, but the handling for this is broken since we need
errno to be set to EINVAL in order to skip the test as we should. Given
that this ioctl() has been defined since v4.15 we may as well just assume
it's there rather than write handling code which will probably never get
used.

Signed-off-by: Mark Brown <[email protected]>
---
 tools/testing/selftests/filesystems/devpts_pts.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/tools/testing/selftests/filesystems/devpts_pts.c 
b/tools/testing/selftests/filesystems/devpts_pts.c
index b1fc9b916ace..cad7da1bd7ca 100644
--- a/tools/testing/selftests/filesystems/devpts_pts.c
+++ b/tools/testing/selftests/filesystems/devpts_pts.c
@@ -100,7 +100,7 @@ static int resolve_procfd_symlink(int fd, char *buf, size_t 
buflen)
 static int do_tiocgptpeer(char *ptmx, char *expected_procfd_contents)
 {
        int ret;
-       int master = -1, slave = -1, fret = -1;
+       int master = -1, slave, fret = -1;
 
        master = open(ptmx, O_RDWR | O_NOCTTY | O_CLOEXEC);
        if (master < 0) {
@@ -119,9 +119,7 @@ static int do_tiocgptpeer(char *ptmx, char 
*expected_procfd_contents)
                goto do_cleanup;
        }
 
-#ifdef TIOCGPTPEER
        slave = ioctl(master, TIOCGPTPEER, O_RDWR | O_NOCTTY | O_CLOEXEC);
-#endif
        if (slave < 0) {
                if (errno == EINVAL) {
                        fprintf(stderr, "TIOCGPTPEER is not supported. "

---
base-commit: ac3fd01e4c1efce8f2c054cdeb2ddd2fc0fb150d
change-id: 20251126-selftests-filesystems-devpts-tiocgptpeer-fbd30e579859

Best regards,
--  
Mark Brown <[email protected]>


Reply via email to