Merged
StellaOS requested to merge
fix_pipe into
main
- board/qemu: IRQ handler 处理完 virtio/UART 中断后禁用 PLIC 中断源防止 IRQ storm,
新增 reenable_block_irq/reenable_uart_irq 供 NB 路径重新使能
- drivers/virtio_blk: NB 读写路径提交前重新使能 PLIC 源,schedule 前后
开/关中断,完成后重新使能;注释掉当前不可用的 NB 路径
- drivers/ns16550a: read 阻塞路径同理处理 PLIC 重使能 + 中断开关
- config: DL_INTERP_OFFSET 从 0x40_0000_0000 修正为 0x20_0000_0000,
旧值超出 Sv39 用户空间上界导致 ld.so 映射到内核地址区 → InstructionPageFault
- trap/context: init_user_trapframe 确保 sret 返回 User 模式 (SPP=User),
防止 S 模式执行用户页缺页死循环
- lang_items: panic handler 加 AtomicBool 防重入,二次 panic 时静默关机
- main: 默认禁用 DEV_NON_BLOCKING_ACCESS,块设备走同步轮询路径
- VFS manager: chdir 路径添加 log::info 调试日志
- mm/task/trap/syscall: 注释掉大量调试打印,保留 checkpoint 注释
- user/initproc: 执行测例前打印 TEST 信息
- 移除 rust-toolchain.toml(Docker 构建兼容)和 sdcard/ 预编译测例