ziglang/zig
261
5.9k
Fork
You've already forked zig
764

std.fs test failures on less common filesystems on linux #31542

Open
opened 2026年03月16日 20:50:47 +01:00 by eshom · 0 comments
Contributor
Copy link

Zig Version

0.16.0-dev.2982+b4d134a0d

Steps to Reproduce and Observed Behavior

I've run the standard library tests zig test lib/std/std.zig as preparation for a PR, and due to its nature I've done that on NFS, which isn't normally covered by CI.

Host kernel: 6.19.6-1-default (client)
Guest kernel: 6.8.0-106-generic (server)

Edit: Updated for 0.17.0-dev.3920+9c79c784a

Unit Tests Results on NFS

❯ zig-dev build test-std -Dskip-release -Dskip-non-native
test-std
└─ run test std-native-raptorlake-Debug-libc 3184 pass, 33 skip, 1 fail, 4 crash (3222 total)
error: 'fs.test.test.AtomicFile' terminated with signal ABRT with stderr:
 thread 135820 panic: programmer bug caused syscall error: INVAL
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13e534a in errnoBug (std.zig)
 if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:1440:33: 0x13f4a88 in errnoBug (std.zig)
 return Threaded.errnoBug(err);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:7744:48: 0x1426929 in dirRenamePreserveLinux (std.zig)
 .INVAL => |err| return syscall.errnoBug(err),
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:7508:59: 0x14259a8 in dirRenamePreserve (std.zig)
 if (native_os == .linux) return dirRenamePreserveLinux(old_dir, old_sub_path, new_dir, new_sub_path);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:1140:39: 0x1ef146b in renamePreserve (std.zig)
 return io.vtable.dirRenamePreserve(io.userdata, old_dir, old_sub_path, new_dir, new_sub_path);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/File/Atomic.zig:55:34: 0x1ef0cef in link (std.zig)
 try af.dir.renamePreserve(&tmp_sub_path, af.dir, af.dest_sub_path, io);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1730:28: 0x1f04d44 in impl (std.zig)
 try af.link(io);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1f05870 in testWithPathTypeIfSupported__anon_742542 (std.zig)
 try test_func(&ctx);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1f05aec in testWithAllSupportedPathTypes__anon_742538 (std.zig)
 try testWithPathTypeIfSupported(.relative, '/', test_func);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1715:38: 0x1f05bfc in test.AtomicFile (std.zig)
 try testWithAllSupportedPathTypes(struct {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1474cda in mainServer (test_runner.zig)
 const status: TestResults.Status = if (test_fn.func()) |v| s: {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1475add in main (test_runner.zig)
 return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14727fe in callMain (std.zig)
 if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{
 ^
 ???:?:?: 0x7f9d31e2b33d in ??? (/lib64/libc.so.6)
 ???:?:?: 0x7f9d31e2b46a in ??? (/lib64/libc.so.6)
 ../sysdeps/x86_64/start.S:115: 0x3aa7494 in _start (../sysdeps/x86_64/start.S)
error: 'fs.test.test.open file with shared and exclusive nonblocking lock' terminated with signal ABRT with stderr:
 thread 135928 panic: programmer bug caused syscall error: BADF
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13e534a in errnoBug (std.zig)
 if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4350:55: 0x143098f in dirCreateFilePosix (std.zig)
 .BADF => |err| return errnoBug(err), // File descriptor used after closed.
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:642:35: 0x14318ed in createFile (std.zig)
 return io.vtable.dirCreateFile(io.userdata, dir, sub_path, flags);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1779:49: 0x1f03939 in impl (std.zig)
 const file1 = try ctx.dir.createFile(io, filename, .{ .lock = .shared, .lock_nonblocking = true });
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1f03cc0 in testWithPathTypeIfSupported__anon_742452 (std.zig)
 try test_func(&ctx);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1f03f3c in testWithAllSupportedPathTypes__anon_742448 (std.zig)
 try testWithPathTypeIfSupported(.relative, '/', test_func);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1774:38: 0x1f0404c in test.open file with shared and exclusive nonblocking lock (std.zig)
 try testWithAllSupportedPathTypes(struct {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1474cda in mainServer (test_runner.zig)
 const status: TestResults.Status = if (test_fn.func()) |v| s: {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1475add in main (test_runner.zig)
 return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14727fe in callMain (std.zig)
 if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{
 ^
 ???:?:?: 0x7f2a3022b33d in ??? (/lib64/libc.so.6)
 ???:?:?: 0x7f2a3022b46a in ??? (/lib64/libc.so.6)
 ../sysdeps/x86_64/start.S:115: 0x3aa7494 in _start (../sysdeps/x86_64/start.S)
error: 'fs.test.test.open file with exclusive and shared nonblocking lock' terminated with signal ABRT with stderr:
 thread 135957 panic: programmer bug caused syscall error: BADF
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13e534a in errnoBug (std.zig)
 if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4350:55: 0x143098f in dirCreateFilePosix (std.zig)
 .BADF => |err| return errnoBug(err), // File descriptor used after closed.
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:642:35: 0x14318ed in createFile (std.zig)
 return io.vtable.dirCreateFile(io.userdata, dir, sub_path, flags);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1799:45: 0x1f03159 in impl (std.zig)
 const file2 = ctx.dir.createFile(io, filename, .{ .lock = .shared, .lock_nonblocking = true });
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1f03420 in testWithPathTypeIfSupported__anon_742402 (std.zig)
 try test_func(&ctx);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1f0369c in testWithAllSupportedPathTypes__anon_742398 (std.zig)
 try testWithPathTypeIfSupported(.relative, '/', test_func);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1791:38: 0x1f037ac in test.open file with exclusive and shared nonblocking lock (std.zig)
 try testWithAllSupportedPathTypes(struct {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1474cda in mainServer (test_runner.zig)
 const status: TestResults.Status = if (test_fn.func()) |v| s: {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1475add in main (test_runner.zig)
 return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14727fe in callMain (std.zig)
 if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{
 ^
 ???:?:?: 0x7f02d742b33d in ??? (/lib64/libc.so.6)
 ???:?:?: 0x7f02d742b46a in ??? (/lib64/libc.so.6)
 ../sysdeps/x86_64/start.S:115: 0x3aa7494 in _start (../sysdeps/x86_64/start.S)
error: 'fs.test.test.use Lock.none to unlock files' terminated with signal ABRT with stderr:
 thread 136002 panic: programmer bug caused syscall error: BADF
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13e534a in errnoBug (std.zig)
 if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4946:55: 0x142d86a in dirOpenFilePosix (std.zig)
 .BADF => |err| return errnoBug(err), // File descriptor used after closed.
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:581:33: 0x12e4b3a in openFile (std.zig)
 return io.vtable.dirOpenFile(io.userdata, dir, sub_path, options);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1933:44: 0x1efcec9 in test.use Lock.none to unlock files (std.zig)
 const test_file2 = try tmp.dir.openFile(io, "test_file", .{ .lock = .exclusive, .lock_nonblocking = true });
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1474cda in mainServer (test_runner.zig)
 const status: TestResults.Status = if (test_fn.func()) |v| s: {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1475add in main (test_runner.zig)
 return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14727fe in callMain (std.zig)
 if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{
 ^
 ???:?:?: 0x7f6d2242b33d in ??? (/lib64/libc.so.6)
 ???:?:?: 0x7f6d2242b46a in ??? (/lib64/libc.so.6)
 ../sysdeps/x86_64/start.S:115: 0x3aa7494 in _start (../sysdeps/x86_64/start.S)
error: 'fs.test.test.hard link with different directories' failed:
 expected 1, found 2
 /home/erez/projects/playground/nfs/zig/lib/std/testing.zig:110:17: 0x1983254 in expectEqualInner__anon_66628 (std.zig)
 return error.TestExpectedEqual;
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/testing.zig:75:5: 0x1edf616 in expectEqual (std.zig)
 return expectEqualInner(T, expected, actual);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:2718:5: 0x1edf74d in test.hard link with different directories (std.zig)
 try expectEqual(1, e_stat.nlink);
 ^
failed command: ./.zig-cache/o/be7eff69857845290ad9a9a0bf014ded/test --cache-dir=./.zig-cache --seed=0xc1ac8bd8 --listen=-
test-std
└─ run test std-native-raptorlake-Debug-single 3159 pass, 68 skip, 1 fail, 4 crash (3232 total)
error: 'fs.test.test.AtomicFile' terminated with signal ABRT with stderr:
 panic: programmer bug caused syscall error: INVAL
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13d85da in errnoBug (std.zig)
 if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:1440:33: 0x13ea778 in errnoBug (std.zig)
 return Threaded.errnoBug(err);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:7744:48: 0x141f909 in dirRenamePreserveLinux (std.zig)
 .INVAL => |err| return syscall.errnoBug(err),
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:7508:59: 0x141e988 in dirRenamePreserve (std.zig)
 if (native_os == .linux) return dirRenamePreserveLinux(old_dir, old_sub_path, new_dir, new_sub_path);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:1140:39: 0x1ec873b in renamePreserve (std.zig)
 return io.vtable.dirRenamePreserve(io.userdata, old_dir, old_sub_path, new_dir, new_sub_path);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/File/Atomic.zig:55:34: 0x1ec7fbf in link (std.zig)
 try af.dir.renamePreserve(&tmp_sub_path, af.dir, af.dest_sub_path, io);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1730:28: 0x1edbbc5 in impl (std.zig)
 try af.link(io);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1edc6f0 in testWithPathTypeIfSupported__anon_741527 (std.zig)
 try test_func(&ctx);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1edc96c in testWithAllSupportedPathTypes__anon_741523 (std.zig)
 try testWithPathTypeIfSupported(.relative, '/', test_func);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1715:38: 0x1edca7c in test.AtomicFile (std.zig)
 try testWithAllSupportedPathTypes(struct {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1465e25 in mainServer (test_runner.zig)
 const status: TestResults.Status = if (test_fn.func()) |v| s: {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1466c5d in main (test_runner.zig)
 return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14636b0 in callMain (std.zig)
 if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14630a1 in _start (std.zig)
 asm volatile (switch (native_arch) {
 ^
error: 'fs.test.test.open file with shared and exclusive nonblocking lock' terminated with signal ABRT with stderr:
 panic: programmer bug caused syscall error: BADF
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13d85da in errnoBug (std.zig)
 if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4350:55: 0x142955a in dirCreateFilePosix (std.zig)
 .BADF => |err| return errnoBug(err), // File descriptor used after closed.
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:642:35: 0x142a7fd in createFile (std.zig)
 return io.vtable.dirCreateFile(io.userdata, dir, sub_path, flags);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1779:49: 0x1eda7b9 in impl (std.zig)
 const file1 = try ctx.dir.createFile(io, filename, .{ .lock = .shared, .lock_nonblocking = true });
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1edab40 in testWithPathTypeIfSupported__anon_741437 (std.zig)
 try test_func(&ctx);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1edadbc in testWithAllSupportedPathTypes__anon_741433 (std.zig)
 try testWithPathTypeIfSupported(.relative, '/', test_func);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1774:38: 0x1edaecc in test.open file with shared and exclusive nonblocking lock (std.zig)
 try testWithAllSupportedPathTypes(struct {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1465e25 in mainServer (test_runner.zig)
 const status: TestResults.Status = if (test_fn.func()) |v| s: {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1466c5d in main (test_runner.zig)
 return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14636b0 in callMain (std.zig)
 if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14630a1 in _start (std.zig)
 asm volatile (switch (native_arch) {
 ^
error: 'fs.test.test.open file with exclusive and shared nonblocking lock' terminated with signal ABRT with stderr:
 panic: programmer bug caused syscall error: BADF
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13d85da in errnoBug (std.zig)
 if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4350:55: 0x142955a in dirCreateFilePosix (std.zig)
 .BADF => |err| return errnoBug(err), // File descriptor used after closed.
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:642:35: 0x142a7fd in createFile (std.zig)
 return io.vtable.dirCreateFile(io.userdata, dir, sub_path, flags);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1799:45: 0x1ed9fd9 in impl (std.zig)
 const file2 = ctx.dir.createFile(io, filename, .{ .lock = .shared, .lock_nonblocking = true });
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1eda2a0 in testWithPathTypeIfSupported__anon_741387 (std.zig)
 try test_func(&ctx);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1eda51c in testWithAllSupportedPathTypes__anon_741383 (std.zig)
 try testWithPathTypeIfSupported(.relative, '/', test_func);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1791:38: 0x1eda62c in test.open file with exclusive and shared nonblocking lock (std.zig)
 try testWithAllSupportedPathTypes(struct {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1465e25 in mainServer (test_runner.zig)
 const status: TestResults.Status = if (test_fn.func()) |v| s: {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1466c5d in main (test_runner.zig)
 return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14636b0 in callMain (std.zig)
 if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14630a1 in _start (std.zig)
 asm volatile (switch (native_arch) {
 ^
error: 'fs.test.test.use Lock.none to unlock files' terminated with signal ABRT with stderr:
 panic: programmer bug caused syscall error: BADF
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13d85da in errnoBug (std.zig)
 if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4946:55: 0x14260b1 in dirOpenFilePosix (std.zig)
 .BADF => |err| return errnoBug(err), // File descriptor used after closed.
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:581:33: 0x12c45fa in openFile (std.zig)
 return io.vtable.dirOpenFile(io.userdata, dir, sub_path, options);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1933:44: 0x1ed37eb in test.use Lock.none to unlock files (std.zig)
 const test_file2 = try tmp.dir.openFile(io, "test_file", .{ .lock = .exclusive, .lock_nonblocking = true });
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1465e25 in mainServer (test_runner.zig)
 const status: TestResults.Status = if (test_fn.func()) |v| s: {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1466c5d in main (test_runner.zig)
 return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14636b0 in callMain (std.zig)
 if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14630a1 in _start (std.zig)
 asm volatile (switch (native_arch) {
 ^
error: 'fs.test.test.hard link with different directories' failed:
 expected 1, found 2
 /home/erez/projects/playground/nfs/zig/lib/std/testing.zig:110:17: 0x195ae14 in expectEqualInner__anon_65764 (std.zig)
 return error.TestExpectedEqual;
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/testing.zig:75:5: 0x1eb67eb in expectEqual (std.zig)
 return expectEqualInner(T, expected, actual);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:2718:5: 0x1eb6922 in test.hard link with different directories (std.zig)
 try expectEqual(1, e_stat.nlink);
 ^
failed command: ./.zig-cache/o/c711ff5c89b2ca4f83d240c392e5ccec/test --cache-dir=./.zig-cache --seed=0xc1ac8bd8 --listen=-
test-std
└─ run test std-native-raptorlake-Debug 3185 pass, 32 skip, 1 fail, 4 crash (3222 total)
error: 'fs.test.test.AtomicFile' terminated with signal ABRT with stderr:
 thread 136085 panic: programmer bug caused syscall error: INVAL
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x1400d0a in errnoBug (std.zig)
 if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:1440:33: 0x1412c08 in errnoBug (std.zig)
 return Threaded.errnoBug(err);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:7744:48: 0x1447d09 in dirRenamePreserveLinux (std.zig)
 .INVAL => |err| return syscall.errnoBug(err),
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:7508:59: 0x1446d88 in dirRenamePreserve (std.zig)
 if (native_os == .linux) return dirRenamePreserveLinux(old_dir, old_sub_path, new_dir, new_sub_path);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:1140:39: 0x1f108db in renamePreserve (std.zig)
 return io.vtable.dirRenamePreserve(io.userdata, old_dir, old_sub_path, new_dir, new_sub_path);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/File/Atomic.zig:55:34: 0x1f1015f in link (std.zig)
 try af.dir.renamePreserve(&tmp_sub_path, af.dir, af.dest_sub_path, io);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1730:28: 0x1f23805 in impl (std.zig)
 try af.link(io);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1f24330 in testWithPathTypeIfSupported__anon_743305 (std.zig)
 try test_func(&ctx);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1f245ac in testWithAllSupportedPathTypes__anon_743301 (std.zig)
 try testWithPathTypeIfSupported(.relative, '/', test_func);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1715:38: 0x1f246bc in test.AtomicFile (std.zig)
 try testWithAllSupportedPathTypes(struct {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x14974e5 in mainServer (test_runner.zig)
 const status: TestResults.Status = if (test_fn.func()) |v| s: {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x149831d in main (test_runner.zig)
 return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x1494b05 in callMain (std.zig)
 if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14944e1 in _start (std.zig)
 asm volatile (switch (native_arch) {
 ^
error: 'fs.test.test.open file with shared and exclusive nonblocking lock' terminated with signal ABRT with stderr:
 thread 136245 panic: programmer bug caused syscall error: BADF
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x1400d0a in errnoBug (std.zig)
 if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4350:55: 0x145195a in dirCreateFilePosix (std.zig)
 .BADF => |err| return errnoBug(err), // File descriptor used after closed.
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:642:35: 0x1452bfd in createFile (std.zig)
 return io.vtable.dirCreateFile(io.userdata, dir, sub_path, flags);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1779:49: 0x1f223f9 in impl (std.zig)
 const file1 = try ctx.dir.createFile(io, filename, .{ .lock = .shared, .lock_nonblocking = true });
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1f22780 in testWithPathTypeIfSupported__anon_743215 (std.zig)
 try test_func(&ctx);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1f229fc in testWithAllSupportedPathTypes__anon_743211 (std.zig)
 try testWithPathTypeIfSupported(.relative, '/', test_func);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1774:38: 0x1f22b0c in test.open file with shared and exclusive nonblocking lock (std.zig)
 try testWithAllSupportedPathTypes(struct {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x14974e5 in mainServer (test_runner.zig)
 const status: TestResults.Status = if (test_fn.func()) |v| s: {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x149831d in main (test_runner.zig)
 return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x1494b05 in callMain (std.zig)
 if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14944e1 in _start (std.zig)
 asm volatile (switch (native_arch) {
 ^
error: 'fs.test.test.open file with exclusive and shared nonblocking lock' terminated with signal ABRT with stderr:
 thread 136309 panic: programmer bug caused syscall error: BADF
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x1400d0a in errnoBug (std.zig)
 if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4350:55: 0x145195a in dirCreateFilePosix (std.zig)
 .BADF => |err| return errnoBug(err), // File descriptor used after closed.
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:642:35: 0x1452bfd in createFile (std.zig)
 return io.vtable.dirCreateFile(io.userdata, dir, sub_path, flags);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1799:45: 0x1f21c19 in impl (std.zig)
 const file2 = ctx.dir.createFile(io, filename, .{ .lock = .shared, .lock_nonblocking = true });
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1f21ee0 in testWithPathTypeIfSupported__anon_743165 (std.zig)
 try test_func(&ctx);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1f2215c in testWithAllSupportedPathTypes__anon_743161 (std.zig)
 try testWithPathTypeIfSupported(.relative, '/', test_func);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1791:38: 0x1f2226c in test.open file with exclusive and shared nonblocking lock (std.zig)
 try testWithAllSupportedPathTypes(struct {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x14974e5 in mainServer (test_runner.zig)
 const status: TestResults.Status = if (test_fn.func()) |v| s: {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x149831d in main (test_runner.zig)
 return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x1494b05 in callMain (std.zig)
 if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14944e1 in _start (std.zig)
 asm volatile (switch (native_arch) {
 ^
error: 'fs.test.test.use Lock.none to unlock files' terminated with signal ABRT with stderr:
 thread 136358 panic: programmer bug caused syscall error: BADF
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x1400d0a in errnoBug (std.zig)
 if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4946:55: 0x144e4b1 in dirOpenFilePosix (std.zig)
 .BADF => |err| return errnoBug(err), // File descriptor used after closed.
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:581:33: 0x12ec19a in openFile (std.zig)
 return io.vtable.dirOpenFile(io.userdata, dir, sub_path, options);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1933:44: 0x1f1b98b in test.use Lock.none to unlock files (std.zig)
 const test_file2 = try tmp.dir.openFile(io, "test_file", .{ .lock = .exclusive, .lock_nonblocking = true });
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x14974e5 in mainServer (test_runner.zig)
 const status: TestResults.Status = if (test_fn.func()) |v| s: {
 ^
 /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x149831d in main (test_runner.zig)
 return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err});
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x1494b05 in callMain (std.zig)
 if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14944e1 in _start (std.zig)
 asm volatile (switch (native_arch) {
 ^
error: 'fs.test.test.hard link with different directories' failed:
 expected 1, found 2
 /home/erez/projects/playground/nfs/zig/lib/std/testing.zig:110:17: 0x19a3364 in expectEqualInner__anon_67739 (std.zig)
 return error.TestExpectedEqual;
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/testing.zig:75:5: 0x1efea4b in expectEqual (std.zig)
 return expectEqualInner(T, expected, actual);
 ^
 /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:2718:5: 0x1efeb82 in test.hard link with different directories (std.zig)
 try expectEqual(1, e_stat.nlink);
 ^
failed command: ./.zig-cache/o/20618fbe60fa20e4c73a15326e458f8f/test --cache-dir=./.zig-cache --seed=0xc1ac8bd8 --listen=-
Build Summary: 3/7 steps succeeded (3 failed); 9528/9676 tests passed (133 skipped, 3 failed, 12 crashed)
test-std transitive failure
├─ run test std-native-raptorlake-Debug 3185 pass, 32 skip, 1 fail, 4 crash (3222 total)
├─ run test std-native-raptorlake-Debug-libc 3184 pass, 33 skip, 1 fail, 4 crash (3222 total)
└─ run test std-native-raptorlake-Debug-single 3159 pass, 68 skip, 1 fail, 4 crash (3232 total)
error: the following maker command exited with code 1:
/home/erez/.cache/zig/o/438be5a36392a27b35fb716fcf84e0ac/maker --zig /home/erez/src/zig/build/stage3/bin/zig --zig-lib-dir /home/erez/src/zig/build/stage3/lib/zig --build-root /home/erez/projects/playground/nfs/zig --local-cache .zig-cache --global-cache /home/erez/.cache/zig --configuration .zig-cache/tmp/4b5f5356dcf6e8d3 --seed 0xc1ac8bd8 test-std
[ble: exit 1][ble: elapsed 376.602s (CPU 48.5%)] zig-dev build test-std -Dskip-release -Dskip-non-native

Expected Behavior

All std.fs tests pass or officially not support less common filesystems.

### Zig Version 0.16.0-dev.2982+b4d134a0d ### Steps to Reproduce and Observed Behavior I've run the standard library tests `zig test lib/std/std.zig` as preparation for a PR, and due to its nature I've done that on NFS, which isn't normally covered by CI. Host kernel: `6.19.6-1-default` (client) Guest kernel: `6.8.0-106-generic` (server) Edit: Updated for `0.17.0-dev.3920+9c79c784a` ### Unit Tests Results on NFS ``` ❯ zig-dev build test-std -Dskip-release -Dskip-non-native test-std └─ run test std-native-raptorlake-Debug-libc 3184 pass, 33 skip, 1 fail, 4 crash (3222 total) error: 'fs.test.test.AtomicFile' terminated with signal ABRT with stderr: thread 135820 panic: programmer bug caused syscall error: INVAL /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13e534a in errnoBug (std.zig) if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:1440:33: 0x13f4a88 in errnoBug (std.zig) return Threaded.errnoBug(err); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:7744:48: 0x1426929 in dirRenamePreserveLinux (std.zig) .INVAL => |err| return syscall.errnoBug(err), ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:7508:59: 0x14259a8 in dirRenamePreserve (std.zig) if (native_os == .linux) return dirRenamePreserveLinux(old_dir, old_sub_path, new_dir, new_sub_path); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:1140:39: 0x1ef146b in renamePreserve (std.zig) return io.vtable.dirRenamePreserve(io.userdata, old_dir, old_sub_path, new_dir, new_sub_path); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/File/Atomic.zig:55:34: 0x1ef0cef in link (std.zig) try af.dir.renamePreserve(&tmp_sub_path, af.dir, af.dest_sub_path, io); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1730:28: 0x1f04d44 in impl (std.zig) try af.link(io); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1f05870 in testWithPathTypeIfSupported__anon_742542 (std.zig) try test_func(&ctx); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1f05aec in testWithAllSupportedPathTypes__anon_742538 (std.zig) try testWithPathTypeIfSupported(.relative, '/', test_func); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1715:38: 0x1f05bfc in test.AtomicFile (std.zig) try testWithAllSupportedPathTypes(struct { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1474cda in mainServer (test_runner.zig) const status: TestResults.Status = if (test_fn.func()) |v| s: { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1475add in main (test_runner.zig) return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14727fe in callMain (std.zig) if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{ ^ ???:?:?: 0x7f9d31e2b33d in ??? (/lib64/libc.so.6) ???:?:?: 0x7f9d31e2b46a in ??? (/lib64/libc.so.6) ../sysdeps/x86_64/start.S:115: 0x3aa7494 in _start (../sysdeps/x86_64/start.S) error: 'fs.test.test.open file with shared and exclusive nonblocking lock' terminated with signal ABRT with stderr: thread 135928 panic: programmer bug caused syscall error: BADF /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13e534a in errnoBug (std.zig) if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4350:55: 0x143098f in dirCreateFilePosix (std.zig) .BADF => |err| return errnoBug(err), // File descriptor used after closed. ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:642:35: 0x14318ed in createFile (std.zig) return io.vtable.dirCreateFile(io.userdata, dir, sub_path, flags); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1779:49: 0x1f03939 in impl (std.zig) const file1 = try ctx.dir.createFile(io, filename, .{ .lock = .shared, .lock_nonblocking = true }); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1f03cc0 in testWithPathTypeIfSupported__anon_742452 (std.zig) try test_func(&ctx); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1f03f3c in testWithAllSupportedPathTypes__anon_742448 (std.zig) try testWithPathTypeIfSupported(.relative, '/', test_func); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1774:38: 0x1f0404c in test.open file with shared and exclusive nonblocking lock (std.zig) try testWithAllSupportedPathTypes(struct { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1474cda in mainServer (test_runner.zig) const status: TestResults.Status = if (test_fn.func()) |v| s: { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1475add in main (test_runner.zig) return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14727fe in callMain (std.zig) if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{ ^ ???:?:?: 0x7f2a3022b33d in ??? (/lib64/libc.so.6) ???:?:?: 0x7f2a3022b46a in ??? (/lib64/libc.so.6) ../sysdeps/x86_64/start.S:115: 0x3aa7494 in _start (../sysdeps/x86_64/start.S) error: 'fs.test.test.open file with exclusive and shared nonblocking lock' terminated with signal ABRT with stderr: thread 135957 panic: programmer bug caused syscall error: BADF /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13e534a in errnoBug (std.zig) if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4350:55: 0x143098f in dirCreateFilePosix (std.zig) .BADF => |err| return errnoBug(err), // File descriptor used after closed. ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:642:35: 0x14318ed in createFile (std.zig) return io.vtable.dirCreateFile(io.userdata, dir, sub_path, flags); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1799:45: 0x1f03159 in impl (std.zig) const file2 = ctx.dir.createFile(io, filename, .{ .lock = .shared, .lock_nonblocking = true }); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1f03420 in testWithPathTypeIfSupported__anon_742402 (std.zig) try test_func(&ctx); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1f0369c in testWithAllSupportedPathTypes__anon_742398 (std.zig) try testWithPathTypeIfSupported(.relative, '/', test_func); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1791:38: 0x1f037ac in test.open file with exclusive and shared nonblocking lock (std.zig) try testWithAllSupportedPathTypes(struct { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1474cda in mainServer (test_runner.zig) const status: TestResults.Status = if (test_fn.func()) |v| s: { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1475add in main (test_runner.zig) return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14727fe in callMain (std.zig) if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{ ^ ???:?:?: 0x7f02d742b33d in ??? (/lib64/libc.so.6) ???:?:?: 0x7f02d742b46a in ??? (/lib64/libc.so.6) ../sysdeps/x86_64/start.S:115: 0x3aa7494 in _start (../sysdeps/x86_64/start.S) error: 'fs.test.test.use Lock.none to unlock files' terminated with signal ABRT with stderr: thread 136002 panic: programmer bug caused syscall error: BADF /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13e534a in errnoBug (std.zig) if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4946:55: 0x142d86a in dirOpenFilePosix (std.zig) .BADF => |err| return errnoBug(err), // File descriptor used after closed. ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:581:33: 0x12e4b3a in openFile (std.zig) return io.vtable.dirOpenFile(io.userdata, dir, sub_path, options); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1933:44: 0x1efcec9 in test.use Lock.none to unlock files (std.zig) const test_file2 = try tmp.dir.openFile(io, "test_file", .{ .lock = .exclusive, .lock_nonblocking = true }); ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1474cda in mainServer (test_runner.zig) const status: TestResults.Status = if (test_fn.func()) |v| s: { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1475add in main (test_runner.zig) return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14727fe in callMain (std.zig) if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{ ^ ???:?:?: 0x7f6d2242b33d in ??? (/lib64/libc.so.6) ???:?:?: 0x7f6d2242b46a in ??? (/lib64/libc.so.6) ../sysdeps/x86_64/start.S:115: 0x3aa7494 in _start (../sysdeps/x86_64/start.S) error: 'fs.test.test.hard link with different directories' failed: expected 1, found 2 /home/erez/projects/playground/nfs/zig/lib/std/testing.zig:110:17: 0x1983254 in expectEqualInner__anon_66628 (std.zig) return error.TestExpectedEqual; ^ /home/erez/projects/playground/nfs/zig/lib/std/testing.zig:75:5: 0x1edf616 in expectEqual (std.zig) return expectEqualInner(T, expected, actual); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:2718:5: 0x1edf74d in test.hard link with different directories (std.zig) try expectEqual(1, e_stat.nlink); ^ failed command: ./.zig-cache/o/be7eff69857845290ad9a9a0bf014ded/test --cache-dir=./.zig-cache --seed=0xc1ac8bd8 --listen=- test-std └─ run test std-native-raptorlake-Debug-single 3159 pass, 68 skip, 1 fail, 4 crash (3232 total) error: 'fs.test.test.AtomicFile' terminated with signal ABRT with stderr: panic: programmer bug caused syscall error: INVAL /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13d85da in errnoBug (std.zig) if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:1440:33: 0x13ea778 in errnoBug (std.zig) return Threaded.errnoBug(err); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:7744:48: 0x141f909 in dirRenamePreserveLinux (std.zig) .INVAL => |err| return syscall.errnoBug(err), ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:7508:59: 0x141e988 in dirRenamePreserve (std.zig) if (native_os == .linux) return dirRenamePreserveLinux(old_dir, old_sub_path, new_dir, new_sub_path); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:1140:39: 0x1ec873b in renamePreserve (std.zig) return io.vtable.dirRenamePreserve(io.userdata, old_dir, old_sub_path, new_dir, new_sub_path); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/File/Atomic.zig:55:34: 0x1ec7fbf in link (std.zig) try af.dir.renamePreserve(&tmp_sub_path, af.dir, af.dest_sub_path, io); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1730:28: 0x1edbbc5 in impl (std.zig) try af.link(io); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1edc6f0 in testWithPathTypeIfSupported__anon_741527 (std.zig) try test_func(&ctx); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1edc96c in testWithAllSupportedPathTypes__anon_741523 (std.zig) try testWithPathTypeIfSupported(.relative, '/', test_func); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1715:38: 0x1edca7c in test.AtomicFile (std.zig) try testWithAllSupportedPathTypes(struct { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1465e25 in mainServer (test_runner.zig) const status: TestResults.Status = if (test_fn.func()) |v| s: { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1466c5d in main (test_runner.zig) return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14636b0 in callMain (std.zig) if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{ ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14630a1 in _start (std.zig) asm volatile (switch (native_arch) { ^ error: 'fs.test.test.open file with shared and exclusive nonblocking lock' terminated with signal ABRT with stderr: panic: programmer bug caused syscall error: BADF /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13d85da in errnoBug (std.zig) if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4350:55: 0x142955a in dirCreateFilePosix (std.zig) .BADF => |err| return errnoBug(err), // File descriptor used after closed. ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:642:35: 0x142a7fd in createFile (std.zig) return io.vtable.dirCreateFile(io.userdata, dir, sub_path, flags); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1779:49: 0x1eda7b9 in impl (std.zig) const file1 = try ctx.dir.createFile(io, filename, .{ .lock = .shared, .lock_nonblocking = true }); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1edab40 in testWithPathTypeIfSupported__anon_741437 (std.zig) try test_func(&ctx); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1edadbc in testWithAllSupportedPathTypes__anon_741433 (std.zig) try testWithPathTypeIfSupported(.relative, '/', test_func); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1774:38: 0x1edaecc in test.open file with shared and exclusive nonblocking lock (std.zig) try testWithAllSupportedPathTypes(struct { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1465e25 in mainServer (test_runner.zig) const status: TestResults.Status = if (test_fn.func()) |v| s: { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1466c5d in main (test_runner.zig) return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14636b0 in callMain (std.zig) if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{ ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14630a1 in _start (std.zig) asm volatile (switch (native_arch) { ^ error: 'fs.test.test.open file with exclusive and shared nonblocking lock' terminated with signal ABRT with stderr: panic: programmer bug caused syscall error: BADF /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13d85da in errnoBug (std.zig) if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4350:55: 0x142955a in dirCreateFilePosix (std.zig) .BADF => |err| return errnoBug(err), // File descriptor used after closed. ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:642:35: 0x142a7fd in createFile (std.zig) return io.vtable.dirCreateFile(io.userdata, dir, sub_path, flags); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1799:45: 0x1ed9fd9 in impl (std.zig) const file2 = ctx.dir.createFile(io, filename, .{ .lock = .shared, .lock_nonblocking = true }); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1eda2a0 in testWithPathTypeIfSupported__anon_741387 (std.zig) try test_func(&ctx); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1eda51c in testWithAllSupportedPathTypes__anon_741383 (std.zig) try testWithPathTypeIfSupported(.relative, '/', test_func); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1791:38: 0x1eda62c in test.open file with exclusive and shared nonblocking lock (std.zig) try testWithAllSupportedPathTypes(struct { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1465e25 in mainServer (test_runner.zig) const status: TestResults.Status = if (test_fn.func()) |v| s: { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1466c5d in main (test_runner.zig) return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14636b0 in callMain (std.zig) if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{ ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14630a1 in _start (std.zig) asm volatile (switch (native_arch) { ^ error: 'fs.test.test.use Lock.none to unlock files' terminated with signal ABRT with stderr: panic: programmer bug caused syscall error: BADF /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x13d85da in errnoBug (std.zig) if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4946:55: 0x14260b1 in dirOpenFilePosix (std.zig) .BADF => |err| return errnoBug(err), // File descriptor used after closed. ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:581:33: 0x12c45fa in openFile (std.zig) return io.vtable.dirOpenFile(io.userdata, dir, sub_path, options); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1933:44: 0x1ed37eb in test.use Lock.none to unlock files (std.zig) const test_file2 = try tmp.dir.openFile(io, "test_file", .{ .lock = .exclusive, .lock_nonblocking = true }); ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x1465e25 in mainServer (test_runner.zig) const status: TestResults.Status = if (test_fn.func()) |v| s: { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x1466c5d in main (test_runner.zig) return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x14636b0 in callMain (std.zig) if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{ ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14630a1 in _start (std.zig) asm volatile (switch (native_arch) { ^ error: 'fs.test.test.hard link with different directories' failed: expected 1, found 2 /home/erez/projects/playground/nfs/zig/lib/std/testing.zig:110:17: 0x195ae14 in expectEqualInner__anon_65764 (std.zig) return error.TestExpectedEqual; ^ /home/erez/projects/playground/nfs/zig/lib/std/testing.zig:75:5: 0x1eb67eb in expectEqual (std.zig) return expectEqualInner(T, expected, actual); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:2718:5: 0x1eb6922 in test.hard link with different directories (std.zig) try expectEqual(1, e_stat.nlink); ^ failed command: ./.zig-cache/o/c711ff5c89b2ca4f83d240c392e5ccec/test --cache-dir=./.zig-cache --seed=0xc1ac8bd8 --listen=- test-std └─ run test std-native-raptorlake-Debug 3185 pass, 32 skip, 1 fail, 4 crash (3222 total) error: 'fs.test.test.AtomicFile' terminated with signal ABRT with stderr: thread 136085 panic: programmer bug caused syscall error: INVAL /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x1400d0a in errnoBug (std.zig) if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:1440:33: 0x1412c08 in errnoBug (std.zig) return Threaded.errnoBug(err); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:7744:48: 0x1447d09 in dirRenamePreserveLinux (std.zig) .INVAL => |err| return syscall.errnoBug(err), ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:7508:59: 0x1446d88 in dirRenamePreserve (std.zig) if (native_os == .linux) return dirRenamePreserveLinux(old_dir, old_sub_path, new_dir, new_sub_path); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:1140:39: 0x1f108db in renamePreserve (std.zig) return io.vtable.dirRenamePreserve(io.userdata, old_dir, old_sub_path, new_dir, new_sub_path); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/File/Atomic.zig:55:34: 0x1f1015f in link (std.zig) try af.dir.renamePreserve(&tmp_sub_path, af.dir, af.dest_sub_path, io); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1730:28: 0x1f23805 in impl (std.zig) try af.link(io); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1f24330 in testWithPathTypeIfSupported__anon_743305 (std.zig) try test_func(&ctx); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1f245ac in testWithAllSupportedPathTypes__anon_743301 (std.zig) try testWithPathTypeIfSupported(.relative, '/', test_func); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1715:38: 0x1f246bc in test.AtomicFile (std.zig) try testWithAllSupportedPathTypes(struct { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x14974e5 in mainServer (test_runner.zig) const status: TestResults.Status = if (test_fn.func()) |v| s: { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x149831d in main (test_runner.zig) return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x1494b05 in callMain (std.zig) if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{ ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14944e1 in _start (std.zig) asm volatile (switch (native_arch) { ^ error: 'fs.test.test.open file with shared and exclusive nonblocking lock' terminated with signal ABRT with stderr: thread 136245 panic: programmer bug caused syscall error: BADF /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x1400d0a in errnoBug (std.zig) if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4350:55: 0x145195a in dirCreateFilePosix (std.zig) .BADF => |err| return errnoBug(err), // File descriptor used after closed. ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:642:35: 0x1452bfd in createFile (std.zig) return io.vtable.dirCreateFile(io.userdata, dir, sub_path, flags); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1779:49: 0x1f223f9 in impl (std.zig) const file1 = try ctx.dir.createFile(io, filename, .{ .lock = .shared, .lock_nonblocking = true }); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1f22780 in testWithPathTypeIfSupported__anon_743215 (std.zig) try test_func(&ctx); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1f229fc in testWithAllSupportedPathTypes__anon_743211 (std.zig) try testWithPathTypeIfSupported(.relative, '/', test_func); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1774:38: 0x1f22b0c in test.open file with shared and exclusive nonblocking lock (std.zig) try testWithAllSupportedPathTypes(struct { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x14974e5 in mainServer (test_runner.zig) const status: TestResults.Status = if (test_fn.func()) |v| s: { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x149831d in main (test_runner.zig) return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x1494b05 in callMain (std.zig) if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{ ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14944e1 in _start (std.zig) asm volatile (switch (native_arch) { ^ error: 'fs.test.test.open file with exclusive and shared nonblocking lock' terminated with signal ABRT with stderr: thread 136309 panic: programmer bug caused syscall error: BADF /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x1400d0a in errnoBug (std.zig) if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4350:55: 0x145195a in dirCreateFilePosix (std.zig) .BADF => |err| return errnoBug(err), // File descriptor used after closed. ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:642:35: 0x1452bfd in createFile (std.zig) return io.vtable.dirCreateFile(io.userdata, dir, sub_path, flags); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1799:45: 0x1f21c19 in impl (std.zig) const file2 = ctx.dir.createFile(io, filename, .{ .lock = .shared, .lock_nonblocking = true }); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:184:18: 0x1f21ee0 in testWithPathTypeIfSupported__anon_743165 (std.zig) try test_func(&ctx); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:169:36: 0x1f2215c in testWithAllSupportedPathTypes__anon_743161 (std.zig) try testWithPathTypeIfSupported(.relative, '/', test_func); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1791:38: 0x1f2226c in test.open file with exclusive and shared nonblocking lock (std.zig) try testWithAllSupportedPathTypes(struct { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x14974e5 in mainServer (test_runner.zig) const status: TestResults.Status = if (test_fn.func()) |v| s: { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x149831d in main (test_runner.zig) return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x1494b05 in callMain (std.zig) if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{ ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14944e1 in _start (std.zig) asm volatile (switch (native_arch) { ^ error: 'fs.test.test.use Lock.none to unlock files' terminated with signal ABRT with stderr: thread 136358 panic: programmer bug caused syscall error: BADF /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:14195:34: 0x1400d0a in errnoBug (std.zig) if (is_debug) std.debug.panic("programmer bug caused syscall error: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Threaded.zig:4946:55: 0x144e4b1 in dirOpenFilePosix (std.zig) .BADF => |err| return errnoBug(err), // File descriptor used after closed. ^ /home/erez/projects/playground/nfs/zig/lib/std/Io/Dir.zig:581:33: 0x12ec19a in openFile (std.zig) return io.vtable.dirOpenFile(io.userdata, dir, sub_path, options); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:1933:44: 0x1f1b98b in test.use Lock.none to unlock files (std.zig) const test_file2 = try tmp.dir.openFile(io, "test_file", .{ .lock = .exclusive, .lock_nonblocking = true }); ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:143:68: 0x14974e5 in mainServer (test_runner.zig) const status: TestResults.Status = if (test_fn.func()) |v| s: { ^ /home/erez/projects/playground/nfs/zig/lib/compiler/test_runner.zig:71:26: 0x149831d in main (test_runner.zig) return mainServer(init) catch |err| panic("internal test runner failure: {t}", .{err}); ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:740:88: 0x1494b05 in callMain (std.zig) if (fn_info.param_types[0].? == std.process.Init.Minimal) return wrapMain(root.main(.{ ^ /home/erez/projects/playground/nfs/zig/lib/std/start.zig:205:5: 0x14944e1 in _start (std.zig) asm volatile (switch (native_arch) { ^ error: 'fs.test.test.hard link with different directories' failed: expected 1, found 2 /home/erez/projects/playground/nfs/zig/lib/std/testing.zig:110:17: 0x19a3364 in expectEqualInner__anon_67739 (std.zig) return error.TestExpectedEqual; ^ /home/erez/projects/playground/nfs/zig/lib/std/testing.zig:75:5: 0x1efea4b in expectEqual (std.zig) return expectEqualInner(T, expected, actual); ^ /home/erez/projects/playground/nfs/zig/lib/std/fs/test.zig:2718:5: 0x1efeb82 in test.hard link with different directories (std.zig) try expectEqual(1, e_stat.nlink); ^ failed command: ./.zig-cache/o/20618fbe60fa20e4c73a15326e458f8f/test --cache-dir=./.zig-cache --seed=0xc1ac8bd8 --listen=- Build Summary: 3/7 steps succeeded (3 failed); 9528/9676 tests passed (133 skipped, 3 failed, 12 crashed) test-std transitive failure ├─ run test std-native-raptorlake-Debug 3185 pass, 32 skip, 1 fail, 4 crash (3222 total) ├─ run test std-native-raptorlake-Debug-libc 3184 pass, 33 skip, 1 fail, 4 crash (3222 total) └─ run test std-native-raptorlake-Debug-single 3159 pass, 68 skip, 1 fail, 4 crash (3232 total) error: the following maker command exited with code 1: /home/erez/.cache/zig/o/438be5a36392a27b35fb716fcf84e0ac/maker --zig /home/erez/src/zig/build/stage3/bin/zig --zig-lib-dir /home/erez/src/zig/build/stage3/lib/zig --build-root /home/erez/projects/playground/nfs/zig --local-cache .zig-cache --global-cache /home/erez/.cache/zig --configuration .zig-cache/tmp/4b5f5356dcf6e8d3 --seed 0xc1ac8bd8 test-std [ble: exit 1][ble: elapsed 376.602s (CPU 48.5%)] zig-dev build test-std -Dskip-release -Dskip-non-native ``` ### Expected Behavior All `std.fs` tests pass or officially not support less common filesystems.
mlugg added this to the Upcoming milestone 2026年03月17日 19:51:41 +01:00
eshom changed title from (削除) std.fs test failures on NFS on linux (削除ここまで) to std.fs test failures on less common filesystems on linux 2026年05月20日 12:01:27 +02:00
Sign in to join this conversation.
No Branch/Tag specified
master
elfv2
spork8
restricted
0.16.x
panic-rewrite
parking-futex-lockfree
windows-Io-cleanup
Io-watch
ParseCommandLineOptions
windows-async-files
poll-ring
debug-file-leaks-differently
debug-file-leaks
ProcessPrng
elfv2-dyn
jobserver
threadtheft
io-threaded-no-queue
0.15.x
Io.net
comptime-allocator
restricted-function-pointers
cli
wasm-linker-writer
wrangle-writer-buffering
sha1-stream
async-await-demo
fixes
0.14.x
ast-node-methods
macos-debug-info
make-vs-configure
fuzz-macos
sans-aro
ArrayList-reserve
incr-bug
llvm-ir-nosanitize-metadata
ci-tarballs
ci-scripts
threadpool
0.12.x
new-pkg-hash
json-diagnostics
more-doctests
rework-comptime-mutation
0.11.x
ci-perf-comment
stage2-async
0.10.x
autofix
0.9.x
aro
hcs
0.8.x
0.7.x
0.16.0
0.15.2
0.15.1
0.15.0
0.14.1
0.14.0
0.12.1
0.13.0
0.12.0
0.11.0
0.10.1
0.10.0
0.9.1
0.9.0
0.8.1
0.8.0
0.7.1
0.7.0
0.6.0
0.5.0
0.4.0
0.3.0
0.2.0
0.1.1
0.1.0
Labels
Clear labels
abi/f32
abi/ilp32
abi/sf
accepted
This proposal is planned.
arch/21k
arch/6502
arch/aarch64
arch/alpha
arch/amdgcn
arch/arc
arch/arc32
arch/arc64
arch/arm
arch/avr
arch/bfin
arch/bpf
arch/colossus
arch/cris
arch/csky
arch/dlx
arch/epiphany
arch/fr30
arch/frv
arch/hexagon
arch/hppa
arch/hppa64
arch/ia64
arch/kalimba
arch/kvx
arch/lanai
arch/lm32
arch/loongarch32
arch/loongarch64
arch/m32r
arch/m68k
arch/m88k
arch/mcore
arch/microblaze
arch/mips
arch/mips64
arch/mmix
arch/moxie
arch/mrisc32
arch/msp430
arch/nds32
arch/ns32k
arch/nvptx
arch/or1k
arch/powerpc
arch/powerpc64
arch/propeller
arch/riscv32
arch/riscv64
arch/rl78
arch/rx
arch/s390x
arch/sh
arch/sparc
arch/sparc64
arch/spirv
arch/spu
arch/tricore
arch/v850
arch/vax
arch/vc4
arch/ve
arch/wasm
arch/x86
arch/x86_64
arch/xcore
arch/xtensa
autodoc
The web application for interactive documentation and generation of its assets.
backend/c
The C backend outputs C source code.
backend/llvm
The LLVM backend outputs an LLVM bitcode module.
backend/self-hosted
The self-hosted backends produce machine code directly.
binutils
Zig's included binary utilities: zig ar, zig dlltool, zig lib, zig ranlib, zig objcopy, and zig rc.
breaking
Implementing this issue could cause existing code to no longer compile or have different behavior.
build system
The Zig build system - zig build, std.Build, the build runner, and package management.
debug info
An issue related to debug information (e.g. DWARF) produced by the Zig compiler.
docs
An issue with documentation, e.g. the language reference or standard library doc comments.
error message
This issue points out an error message that is unhelpful and should be improved.
frontend
Tokenization, parsing, AstGen, ZonGen, Sema, Legalize, and Liveness.
fuzzing
An issue related to Zig's integrated fuzz testing.
incremental
Reuse of internal compiler state for faster compilation.
lib/c
This issue relates to Zig's libc implementation and/or vendored libcs.
lib/compiler-rt
This issue relates to Zig's compiler-rt library.
lib/cxx
This issue relates to Zig's vendored libc++ and/or libc++abi.
lib/std
This issue relates to Zig's standard library.
lib/tsan
This issue relates to Zig's vendored libtsan.
lib/ubsan-rt
This issue relates to Zig's ubsan-rt library.
lib/unwind
This issue relates to Zig's vendored libunwind.
linking
Zig's integrated object file and incremental linker.
miscompilation
The compiler reports success but produces semantically incorrect code.
os/android
os/contiki
os/dragonfly
os/driverkit
os/emscripten
os/freebsd
os/fuchsia
os/haiku
os/hermit
os/hurd
os/illumos
os/ios
os/linux
os/maccatalyst
os/macos
os/managarm
os/netbsd
os/ohos
os/openbsd
os/plan9
os/redox
os/rtems
os/serenity
os/tvos
os/uefi
os/visionos
os/wasi
os/watchos
os/windows
proposal
This issue suggests language modifications. If it also has the "accepted" label then it is planned.
release notes
This issue or pull request should be mentioned in the release notes.
testing
This issue is related to testing the compiler, standard library, or other parts of Zig.
zig cc
Zig as a drop-in C-family compiler.
zig fmt
The Zig source code formatter.
zig reduce
The Zig source code reduction tool.
bounty
https://ziglang.org/news/announcing-donor-bounties
bug
Observed behavior contradicts documented or intended behavior.
contributor-friendly
This issue is limited in scope and/or knowledge of project internals.
downstream
An issue with a third-party project that uses this project.
enhancement
Solving this issue will likely involve adding new logic or components to the codebase.
infra
An issue related to project infrastructure, e.g. continuous integration.
optimization
A task to improve performance and/or resource usage.
question
No questions on the issue tracker; use a community space instead.
regression
Something that used to work in a previous version stopped working
upstream
An issue with a third-party project that this project uses.
use case
Describes a real use case that is difficult or impossible, but does not propose a solution.
No labels
abi/f32
abi/ilp32
abi/sf
accepted
arch/21k
arch/6502
arch/aarch64
arch/alpha
arch/amdgcn
arch/arc
arch/arc32
arch/arc64
arch/arm
arch/avr
arch/bfin
arch/bpf
arch/colossus
arch/cris
arch/csky
arch/dlx
arch/epiphany
arch/fr30
arch/frv
arch/hexagon
arch/hppa
arch/hppa64
arch/ia64
arch/kalimba
arch/kvx
arch/lanai
arch/lm32
arch/loongarch32
arch/loongarch64
arch/m32r
arch/m68k
arch/m88k
arch/mcore
arch/microblaze
arch/mips
arch/mips64
arch/mmix
arch/moxie
arch/mrisc32
arch/msp430
arch/nds32
arch/ns32k
arch/nvptx
arch/or1k
arch/powerpc
arch/powerpc64
arch/propeller
arch/riscv32
arch/riscv64
arch/rl78
arch/rx
arch/s390x
arch/sh
arch/sparc
arch/sparc64
arch/spirv
arch/spu
arch/tricore
arch/v850
arch/vax
arch/vc4
arch/ve
arch/wasm
arch/x86
arch/x86_64
arch/xcore
arch/xtensa
autodoc
backend/c
backend/llvm
backend/self-hosted
binutils
breaking
build system
debug info
docs
error message
frontend
fuzzing
incremental
lib/c
lib/compiler-rt
lib/cxx
lib/std
lib/tsan
lib/ubsan-rt
lib/unwind
linking
miscompilation
os/android
os/contiki
os/dragonfly
os/driverkit
os/emscripten
os/freebsd
os/fuchsia
os/haiku
os/hermit
os/hurd
os/illumos
os/ios
os/linux
os/maccatalyst
os/macos
os/managarm
os/netbsd
os/ohos
os/openbsd
os/plan9
os/redox
os/rtems
os/serenity
os/tvos
os/uefi
os/visionos
os/wasi
os/watchos
os/windows
proposal
release notes
testing
zig cc
zig fmt
zig reduce
bounty
bug
contributor-friendly
downstream
enhancement
infra
optimization
question
regression
upstream
use case
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ziglang/zig#31542
Reference in a new issue
ziglang/zig
No description provided.
Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?