[Bug 295537] linuxulator: O_PATH file descriptors return wrong errno for mmap(2) and f*xattr(2)
Date: Sun, 24 May 2026 14:24:33 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295537 --- Comment #1 from YAO, Xin <mr.yaoxin@outlook.com> --- Using the current FreeBSD 16.0 code, there are 4 failures of the LTP test case open13 $ /opt/ltp/testcases/bin/open13 tst_tmpdir.c:317: TINFO: Using /tmp/LTP_opeJ6gQkD as tmpdir (tmpfs filesystem) tst_test.c:2047: TINFO: LTP version: 20260130 tst_test.c:2050: TINFO: Tested kernel: 5.15.0 FreeBSD 16.0-CURRENT #2 main-n286042-28d85db46b48: Sun May 24 21 x86_64 tst_kconfig.c:71: TINFO: Couldn't locate kernel config! tst_test.c:1877: TINFO: Overall timeout per run is 0h 00m 30s open13.c:77: TPASS: read() on original FD : EBADF (9) open13.c:79: TPASS: read() on duplicated FD : EBADF (9) open13.c:77: TPASS: write() on original FD : EBADF (9) open13.c:79: TPASS: write() on duplicated FD : EBADF (9) open13.c:77: TPASS: fchmod() on original FD : EBADF (9) open13.c:79: TPASS: fchmod() on duplicated FD : EBADF (9) open13.c:77: TPASS: fchown() on original FD : EBADF (9) open13.c:79: TPASS: fchown() on duplicated FD : EBADF (9) open13.c:77: TPASS: ioctl() on original FD : EBADF (9) open13.c:79: TPASS: ioctl() on duplicated FD : EBADF (9) open13.c:77: TFAIL: mmap() on original FD expected EBADF: EACCES (13) open13.c:79: TFAIL: mmap() on duplicated FD expected EBADF: EACCES (13) open13.c:77: TFAIL: fgetxattr() on original FD expected EBADF: EOPNOTSUPP (95) open13.c:79: TFAIL: fgetxattr() on duplicated FD expected EBADF: EOPNOTSUPP (95) Summary: passed 10 failed 4 broken 0 skipped 0 warnings 0 And all passed after the fix $ /opt/ltp/testcases/bin/open13 tst_tmpdir.c:317: TINFO: Using /tmp/LTP_opeiIAOHE as tmpdir (tmpfs filesystem) tst_test.c:2047: TINFO: LTP version: 20260130 tst_test.c:2050: TINFO: Tested kernel: 5.15.0 FreeBSD 16.0-CURRENT #10 open13-fix-src-22b97fbf255b-dirty: Thu x86_64 tst_kconfig.c:71: TINFO: Couldn't locate kernel config! tst_test.c:1877: TINFO: Overall timeout per run is 0h 00m 30s open13.c:77: TPASS: read() on original FD : EBADF (9) open13.c:79: TPASS: read() on duplicated FD : EBADF (9) open13.c:77: TPASS: write() on original FD : EBADF (9) open13.c:79: TPASS: write() on duplicated FD : EBADF (9) open13.c:77: TPASS: fchmod() on original FD : EBADF (9) open13.c:79: TPASS: fchmod() on duplicated FD : EBADF (9) open13.c:77: TPASS: fchown() on original FD : EBADF (9) open13.c:79: TPASS: fchown() on duplicated FD : EBADF (9) open13.c:77: TPASS: ioctl() on original FD : EBADF (9) open13.c:79: TPASS: ioctl() on duplicated FD : EBADF (9) open13.c:77: TPASS: mmap() on original FD : EBADF (9) open13.c:79: TPASS: mmap() on duplicated FD : EBADF (9) open13.c:77: TPASS: fgetxattr() on original FD : EBADF (9) open13.c:79: TPASS: fgetxattr() on duplicated FD : EBADF (9) Summary: passed 14 failed 0 broken 0 skipped 0 warnings 0 -- You are receiving this mail because: You are the assignee for the bug.