Skip to content

6.14

不让内核死机 requested to merge feature/ext4 into main

EXT4 目录项异常、/glibc/basic/mnt 打不开、glibc openat Assert Fatal 的直接原因,是 virtio-blk 非阻塞 read_block_nb 路径没有稳定保证 buffer 在 read_block 返回前已经完成填充。改用同步 read_block/write_block 后,目录块读取稳定,openat 测试通过。 已修复 busybox ls . 超时问题。原因是 getdents64 在 len=0 时返回裸 -1,且日志无法确认目录 cursor 是否推进。修改后 len=0 返回 -EINVAL,并在 copyout 成功后推进 fd_dir_cursor_table。复测显示 busybox ls . 第一次读取目录返回 4048 字节,第二次 cursor=4048 时返回 0(eof),runner 结果从 TIMEOUT 变为 EXIT0。 basic-glibc:完整通过,command 基本全 EXIT0。 basic-musl:大部分通过,存在 command[10] SIGSEGV,但 runner 能继续调度后续测试。 busybox:glibc 和 musl 两组 P0 常用命令均完整通过,pwd/ls/cat/mkdir/cp/rm/sh-c 全部 EXIT0。 整体运行:QEMU exit code = 0,说明不是 timeout,不是 panic,流程可正常结束。

Merge request reports