aLinChe
ffc628df53
feat setitimer/getitimer and fix signal stack logic ( #1377 )
...
* add sys_get/setitimer and fix sig
Signed-off-by: aLinChe <1129332011@qq.com>
* feat cputime
Signed-off-by: aLinChe <1129332011@qq.com>
* fix sas and fix ABI
Signed-off-by: aLinChe <1129332011@qq.com>
* fix fmt
Signed-off-by: aLinChe <1129332011@qq.com>
* fix diff arch::on_sig_stack compile bug
Signed-off-by: aLinChe <1129332011@qq.com>
* fix better code
Signed-off-by: aLinChe <1129332011@qq.com>
* fix arch
Signed-off-by: aLinChe <1129332011@qq.com>
* fix fmt
Signed-off-by: aLinChe <1129332011@qq.com>
* refactor: 简化定时器类型格式化逻辑
- 移除不必要的字符串转换操作
- 使用Debug trait直接格式化枚举值
Signed-off-by: longjin <longjin@DragonOS.org>
---------
Signed-off-by: aLinChe <1129332011@qq.com>
Signed-off-by: longjin <longjin@DragonOS.org>
Co-authored-by: longjin <longjin@DragonOS.org>
2025-11-19 00:33:56 +08:00
github-actions[bot]
fe7cf2ae00
Update translated documentation ( #1385 )
...
Co-authored-by: longjin <longjin@dragonos.org>
2025-11-19 00:21:07 +08:00
LoGin
d93301b512
feat: 实现基于异常表的安全用户空间内存访问机制 ( #1383 )
...
* feat: 实现基于异常表的安全用户空间内存访问机制
- 新增异常表机制,在系统调用中安全处理用户空间内存访问错误
- 实现带异常表保护的memcpy和memset函数,防止无效用户地址导致内核在内存拷贝处以及pagefault处理程序之间反复横跳
- 重构用户空间访问API,提供安全的UserBuffer包装类型
- 更新页错误处理程序,支持异常表修复路径
- 添加异常表测试程序,验证各种边界情况
- 更新内存管理文档,详细说明异常表设计原理和使用场景
Signed-off-by: longjin <longjin@DragonOS.org>
* chore: 更新应用黑名单配置
- 添加 test_ebpf_new, test_ebpf_tp 到黑名单,原因:aya上游发版问题导致CI失败
Signed-off-by: longjin <longjin@DragonOS.org>
---------
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-18 21:02:07 +08:00
LoGin
58cddf7629
fix(rtc): 修复读取时间失败的问题 ( #1384 )
...
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-18 19:46:33 +08:00
LoGin
e85d1cd250
fix(futex): 修复futex唤醒逻辑和旧值保存问题 ( #1382 )
...
- 修复uaddr2唤醒逻辑,当没有等待者时跳过唤醒而非返回错误
- 修复futex操作中旧值保存问题,避免后续修改影响返回值
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-18 11:55:13 +08:00
LoGin
1596425060
ci: 升级构建容器版本至v1.16 ( #1381 )
...
- 更新所有CI工作流文件中的容器镜像版本
- 修改构建脚本中的容器版本引用
- 更新构建容器版本配置文件
- 移除fork测试中的COWSegment测例
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-18 00:27:02 +08:00
Shenjie Yang
95dd6f7fd2
feat(vfs): 添加路径遍历和目录切换的权限检查 ( #1348 )
...
* feat(vfs): 添加路径遍历和目录切换的权限检查
- 新增permission模块处理inode权限检查
- 在路径遍历和chdir/fchdir系统调用中添加权限验证
* feat(filesystem): 实现do_fchmodat文件权限修改功能
* feat(permission)
* fmt
* fix(arch_prctl): 优化arch_prctl错误处理逻辑
* fmt
* fix(fs/permission): 重构权限位计算逻辑,启用测例
- 重构权限位计算逻辑使用ModeType常量
- 更新gvisor测试白名单添加chdir相关测试
* 暂时block掉gvisor的FchdirTest.PermissionDenied测试用例
* refactor(vfs): 将权限检查函数重构为Cred结构体方法
- 将inode_permission及相关辅助函数从独立函数重构为Cred结构体方法
- 更新sys_chdir和sys_fchdir调用权限检查的新接口
- 优化代码组织结构,减少模块间依赖
Signed-off-by: longjin <longjin@DragonOS.org>
---------
Signed-off-by: xbohodx2024 <xbohodx2024@gmail.com>
Signed-off-by: longjin <longjin@DragonOS.org>
Co-authored-by: longjin <longjin@DragonOS.org>
2025-11-17 23:46:28 +08:00
LoGin
0874383697
feat(ci): 添加测试结果上传功能并优化构建流程 ( #1380 )
...
- 新增测试结果解析和上传工具,支持多种测试框架格式
- 在CI工作流中添加测试结果上传步骤
- 引入磁盘节省模式,优化构建缓存管理
- 更新DADK版本要求至0.5.1
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-17 22:01:13 +08:00
LoGin
20db99ff8f
refactor(futex): 优化futex唤醒逻辑和共享键生成机制 ( #1376 )
...
- 重构futex等待唤醒逻辑,明确区分正常唤醒、超时和信号唤醒
- 引入SharedKeyKind枚举,改进共享futex键的生成方式
- 为AddressSpace添加全局唯一ID,支持私有匿名映射的跨线程同步
- 修复clear_child_tid唤醒逻辑,使用FUTEX_SHARED标志
- 更新测试用例,移除不再适用的阻塞项
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-15 13:55:29 +08:00
LoGin
5ca5c0cfd6
fix(futex): 修复futex唤醒逻辑和测试用例 ( #1374 )
...
- 修复futex唤醒算法中的无限循环问题,改为基于初始队列长度的有限遍历
- 实现Linux语义:当nr_wake为0时至少唤醒一个等待者
- 优化队列处理逻辑,正确处理key和bitset匹配条件
- 清理测试用例黑名单,移除已修复的测试项
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-13 22:59:24 +08:00
LoGin
2add5d18a0
feat(futex): 实现优先级继承(PI) futex功能 ( #1373 )
...
- 新增pi_futex模块,实现FUTEX_LOCK_PI、FUTEX_UNLOCK_PI和FUTEX_TRYLOCK_PI系统调用
- 修改futex模块内部结构体字段可见性以支持PI功能
- 在syscall中集成PI futex系统调用处理
- 更新测试用例配置,启用部分PI futex相关测试
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-13 20:29:51 +08:00
LoGin
405aed3286
fix(futex): 修复robust futex实现中的竞态条件和逻辑错误 ( #1372 )
...
- 修复在get_robust_list中正确处理未设置robust list的情况
- 在exit_robust_list中重新从用户空间读取最新robust list内容
- 使用原子操作替换原有的非原子读写操作
- 修复FutexIterator中的链表遍历逻辑
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-13 16:51:00 +08:00
LoGin
2d8c1da084
test: 启用几个futex_test测例 ( #1371 )
...
启用以下测例
- SharedPrivate/PrivateAndSharedFutexTest.Wake0/*
- SharedPrivate/PrivateAndSharedFutexTest.Wake1/*
- SharedPrivate/PrivateAndSharedFutexTest.WakeSome/*
- SharedPrivate/PrivateAndSharedFutexTest.WaitBitset_Wake/*
- SharedPrivate/PrivateAndSharedFutexTest.WaitBitset_WakeBitsetMatch/*
- SharedPrivate/PrivateAndSharedFutexTest.WakeOpCondFailure/*
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-13 12:14:51 +08:00
LoGin
c9fb7305e2
fix: 修复拷贝线程的时候,错误的设置用户栈指针的bug ( #1370 )
...
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-13 11:53:15 +08:00
LoGin
98d9f204c2
fix(vfs): 修复syncfs系统调用中文件描述符验证问题 ( #1369 )
...
- 在syncfs系统调用中添加文件描述符验证逻辑
- 检查文件描述符是否存在以及是否以O_PATH模式打开
- 当文件描述符无效或为O_PATH模式时返回EBADF错误
- 添加sync_test到gvisor测试白名单中
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-12 22:41:49 +08:00
LoGin
209091915d
feat(smp): 实现SYS_GETCPU系统调用 ( #1368 )
...
- 新增sys_getcpu模块,实现获取当前CPU编号和NUMA节点编号功能
- 在smp/syscall模块中导出sys_getcpu模块
- 在gvisor测试白名单中添加getcpu相关测试用例
- 系统调用返回当前CPU ID,对于NUMA节点固定返回0(DragonOS不支持NUMA)
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-12 21:06:16 +08:00
LoGin
40a3a3ec72
refactor(smp): 将smp模块的系统调用适配syscall table ( #1367 )
...
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-12 20:28:40 +08:00
LoGin
4d7e867176
ci: 启用tkill以及tgkill系统调用测试 ( #1366 )
...
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-12 20:10:01 +08:00
LoGin
8215106866
ci: 增强syscall测试监控脚本的健壮性 ( #1364 )
...
- 添加超时配置和进程自动检测机制
- 改进资源清理和错误处理逻辑
- 增加详细的诊断信息和进度报告
- 优化测试流程监控和超时处理
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-12 15:31:15 +08:00
LoGin
9e7725b06c
feat(process): 实现信号备用栈的拷贝逻辑 ( #1363 )
...
- 在进程创建流程中拷贝信号备用栈,确保子进程正确继承父进程的sigaltstack
设置
- 从测试黑名单中移除ForkTest.SigAltStack
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-12 14:58:51 +08:00
LoGin
4db631ef1d
feat(process): 完善进程等待和克隆的语义实现 ( #1362 )
...
* fix(process): 修复wait4系统调用中错误码处理和子进程验证逻辑
- 将ESRCH错误码改为ECHILD以符合POSIX规范
- 增加子进程关系验证,确保只能等待当前进程的子进程
- 从测试黑名单中移除BadChild测试用例
Signed-off-by: longjin <longjin@DragonOS.org>
* feat(process): 实现 wait 系统调用的 __WALL 和 __WCLONE 选项支持
- 新增 child_matches_wait_options 函数用于检查子进程与等待选项的匹配
- 在 do_wait 中根据 __WALL/__WCLONE 选项过滤子进程
- 为 KernelCloneArgs 添加 normalize_exit_signal 方法,正确处理线程组的
exit_signal
- 修复进程退出时仅在有有效 exit_signal 时才向父进程发送信号
- 更新 sys_clone 以支持旧版 clone 系统调用的 exit_signal 参数
Signed-off-by: longjin <longjin@DragonOS.org>
---------
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-12 10:33:05 +08:00
LoGin
9c90aadb0a
fix(mm): 修复伙伴分配器递归死锁问题 ( #1361 )
...
- 移除分配过程中释放空页链表页的操作,避免触发buddy_free导致递归死锁
- 简化页链表管理逻辑,始终保留空页链表页而不释放
- 优化伙伴释放时的页链表选择逻辑,确保正确找到有空位的页链表
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-12 00:03:47 +08:00
LoGin
2b3d5e40a5
feat(kernel): 完善信号处理和进程等待机制 ( #1360 )
...
- 实现kill系统调用的信号0权限检查功能
- 修复进程等待逻辑中的ECHILD错误处理
- 添加PID释放的防御性编程保护
- 更新gvisor测试配置
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-11 23:49:34 +08:00
LoGin
ca2bf5fafe
fix(arch/x86_64): 重构信号栈帧结构以兼容Linux ( #1357 )
...
- 新增与Linux完全兼容的ucontext、sigcontext、fpstate结构体
- 实现内核与用户态FP状态的安全转换
- 改进信号处理函数的寄存器恢复逻辑
- 增强SROP攻击防护机制
- 修复信号处理中FP状态保存与恢复的问题
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-11 16:15:55 +08:00
LoGin
b420dd0736
fix: 修复/proc/self/exe符号链接处理问题 ( #1359 )
...
- 修复符号链接路径拼接时rest_path为空的情况
- 在fork时正确继承父进程的可执行文件路径
- 在execve中解析符号链接的绝对路径
- 添加/proc/self/exe功能测试用例
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-11 16:15:38 +08:00
aLinChe
38c8719041
fix: sys_sigaction, sys_sigprocmask ( #1347 )
...
修复 `sigaction`、`sigprocmask` 系统调用的行为,使其与 gVisor 测试套件的预期语义保持一致。
- **修复 Sigaction**:
- **BadSigsetFails**: `rt_sigaction` 系统调用现在会严格校验用户传入的 `sigsetsize` 参数。如果该大小与内核内部 `SigSet` 结构体的大小不一致,将立即返回 `EINVAL`,这与 Linux 内核的行为完全一致。
- **SetSigkillFails & SetSigstopFails**: 实现比原生 Linux 更严格的安全检查以通过 gVisor 测试。Linux 允许将 `SIGKILL` 或 `SIGSTOP` 的处理器重置为默认值(SIG_DFL),而 gVisor 的测试期望任何对这两个信号的设置尝试(即 act 指针不为 NULL)都应立即失败并返回 `EINVAL`。代码已按此更严格的语义进行调整。
- **修复 SigProcMask**:
- 如果 newset 为 NULL,内核将完全跳过所有修改屏蔽集的逻辑,仅获取当前屏蔽集并按需返回给 oldset。只有当 newset 指针有效时,内核才会根据 how 参数(SIG_BLOCK, SIG_UNBLOCK, SIG_SETMASK)执行相应的修改操作。
**注意**:
对 `sigaction` 的 `SIGKILL`/`SIGSTOP` 处理是为满足 gVisor 安全模型的特定要求,其行为比标准 Linux 内核更为严格。
---------
Signed-off-by: aLinChe <1129332011@qq.com>
Signed-off-by: longjin <longjin@DragonOS.org>
Co-authored-by: longjin <longjin@DragonOS.org>
2025-11-11 15:50:32 +08:00
LoGin
be0d8ac90b
fix(process): 修复vfork实现并添加相关测试 ( #1358 )
...
- 修正vfork系统调用实现,使用正确的CLONE_VFORK | CLONE_VM标志
- 在execve中添加vfork完成通知机制
- 添加vfork相关测试用例到白名单
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-11 15:19:33 +08:00
LoGin
b00f19af9e
fix: 修复信号处理和fork时的FP状态管理问题 ( #1356 )
...
- 在信号处理前保存FP状态并加载标准FP环境
- 在fork时确保保存当前FP寄存器状态
- 更新测试用例白名单以包含FP信号fork & nested测试
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-11 10:14:14 +08:00
kaleidoscope416
678cad5447
fix(vfs): 当以相对路径 + dirfd 调用 openat/unlinkat 时,父目录被错误解析为 root 的问题。 ( #1355 )
...
* 修复do_remove_dir当传入相对路径和dirfd时将父文件夹索引设为root的错误
* 修复do_sys_openat2与 do_unlinkat当传入相对路径和dirfd时将父文件夹索引设为root的错误
---------
Signed-off-by: longjin <longjin@DragonOS.org>
Co-authored-by: longjin <longjin@DragonOS.org>
2025-11-11 00:56:41 +08:00
LoGin
ecd3ee3709
fix: 修复进程地址空间复制时的filemap页面映射问题 ( #1354 )
...
* fix: 修复进程地址空间复制时的filemap页面映射问题
- 实现正确的写时复制机制,为私有映射设置只读权限
- 修复文件映射VMA拆分时的偏移计算问题
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-11 00:28:36 +08:00
LoGin
fbcc00ab39
chore: 将构建容器版本从v1.14升级到v1.15 ( #1353 )
...
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-10 17:31:06 +08:00
LoGin
71a2499385
fix errors cause by git merge in pr #1339 ( #1352 )
...
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-10 13:38:39 +08:00
JingXuan_Wei
be4ee4f0ac
fix:Fix related issues with kexec (pr # 1303) code ( #1339 )
...
- Fix some legacy issues of PR 1303
- Supplement the error handling of PR 1303
Signed-off-by: JensenWei007 <jensenwei007@gmail.com>
2025-11-10 13:31:10 +08:00
LoGin
dee2e02034
feat(mm): 实现 VM_DONTCOPY 标志支持 ( #1349 )
...
- 在地址空间克隆时跳过标记为 VM_DONTCOPY 的 VMA
- 移除已拷贝的 VM_DONTCOPY 区域的页面映射
- 更新测试用例以验证 MADV_DONTFORK 功能
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-06 23:37:31 +08:00
kaleidoscope416
71f867f879
fix(vfs):修复 sys_mknodat 路径解析与 mode 处理,并修复 fatfs中mknod 相关死锁 ( #1346 )
...
- 处理空路径与 dirfd:当传入的路径名解析后为 "" 且给定的 dirfd 不是 AT_FDCWD 时,返回 ENOENT,避免把空字符串当成有效名在指定目录上进行创建
- mode==0 视为常规文件:将 mode 位为 0 的情况当作 S_IFREG 处理,保持与用户态期望一致
- 修正 AT_FDCWD 父目录查找逻辑:在解析父路径并查找父目录时正确处理 AT_FDCWD,避免错误地基于 AT_FDCWD 进行不当的父目录解析
- 修复 mknod 相关死锁:修复fatfs中mknod获取锁后调用create再次获取锁所引发的死锁
---------
Signed-off-by: longjin <2448956191@qq.com>
Co-authored-by: longjin <longjin@DragonOS.org>
2025-11-06 23:33:23 +08:00
Yuming Jiang
d6b2e8691e
feat(vfs): 实现 SYS_PWRITEV 系统调用 ( #1322 )
...
* feat(vfs):实现了 SYS_PWRITEV 系统调用
2025-11-06 23:11:49 +08:00
kaleidoscope416
cb6df6dd68
fix(vfs):调整 lseek 行为 —— 禁止 procfs SEEK_END,目录 SEEK_END 返回 MAX_LFS_FILESIZE ( #1344 )
...
* 修复对procfs,dir进行lseek的行为错误
2025-11-06 23:02:09 +08:00
LoGin
d72261e630
fix(mm): 修复madvise和msync系统调用中的边界处理问题 ( #1345 )
...
- 修复madvise长度参数未对齐时的处理逻辑,添加长度向上舍入和溢出检查
- 优化msync系统调用中的VMA查找逻辑,修复锁竞争和边界条件问题
- 修复UserMappings::find_nearest中的VMA查找逻辑错误
- 启用madvise测试
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-06 16:54:45 +08:00
LoGin
c817baeee0
fix: validate clone flags and update test blocklist ( #1343 )
...
- Replace from_bits_truncate with from_bits to properly validate clone flags
- Remove CloneTest.Clone3UnknownFlag from test blocklist as it's now handled
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-05 13:01:50 +08:00
LoGin
9029f0cd0b
fix: 修复进程创建时 CLONE_PARENT_SETTID 标志处理时机 ( #1342 )
...
- 将 CLONE_PARENT_SETTID 处理逻辑移至进程创建完成后的正确位置
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-05 00:22:29 +08:00
LoGin
f82647f776
ci: 跑系统调用测试的时候,启用stdout实时输出以便定位问题 ( #1341 )
...
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-04 23:24:21 +08:00
LoGin
223966ea18
fix(process): 修复进程等待和退出机制 ( #1340 )
...
- 修正父进程等待子进程的等待队列逻辑
- 优化进程退出时的状态设置
- 添加中断保护以避免竞态条件
- 修正错误码处理
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-04 23:18:21 +08:00
LoGin
9c215fb5ac
feat(process): 添加对fs/gs的用户空间地址验证 ( #1336 )
...
- 在ARCH_SET_FS和ARCH_SET_GS系统调用中添加FS/GS地址的用户空间验证
- 在进程克隆时添加TLS地址的用户空间验证
- 新增KernelCloneArgs::verify()方法用于验证克隆参数
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-04 13:57:20 +08:00
LoGin
75153e2bb1
fix(vfs): 修复文件写入和管道读写逻辑 ( #1335 )
...
- 修复文件写入时RLIMIT_FSIZE限制对非File对象也生效了的问题
- 修复管道读写时缓冲区边界处理逻辑,使用两段复制避免跨尾错误
- 修复非阻塞管道写入时返回错误码不正确的问题
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-03 22:09:06 +08:00
LoGin
d94badf144
fix(mm): 修复匿名共享页跨进程共享问题 ( #1334 )
...
- 修复 MAP_SHARED|ANON 语义,确保匿名共享页在跨进程间真正共享,
避免了由于匿名共享页面在尚未fault的时候,fork,
接着父子进程分别为这一区域分配了不同的物理页面.
- 为 AnonSharedMapping 添加页面缓存,避免重复分配同一页面
- 实现原子性的页面获取或创建机制,防止竞态条件
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-03 22:08:36 +08:00
Vitus
4060371676
feat:nix-shell rust version ( #1331 )
2025-11-03 13:44:21 +08:00
LoGin
741d1ad758
feat: 实现waitid系统调用及作业控制信号处理 ( #1333 )
...
* feat: 实现waitid系统调用及作业控制信号处理
- 新增waitid系统调用,支持WEXITED、WSTOPPED、WCONTINUED等选项
- 完善作业控制信号处理逻辑,支持SIGSTOP/SIGCONT的异步处理
- 优化信号唤醒机制,确保及时处理pending信号
- 添加waitid功能测试用例,验证系统调用正确性
Signed-off-by: longjin <longjin@DragonOS.org>
* fix: 修复进程管理和信号处理中的竞态条件与错误处理
- 在信号唤醒逻辑中添加停止状态检查,避免错误唤醒已停止进程
- 修复进程等待循环中的错误处理,防止在ESRCH等错误时无限循环
- 优化CPU踢出逻辑,避免当前CPU自踢造成的竞态条件
- 清理信号类型定义中的冗余注释
Signed-off-by: longjin <longjin@DragonOS.org>
* fix(ipc): 修正信号信息结构体字段顺序以符合Linux标准
- 调整SigInfo和PosixSigInfo结构体字段顺序
- 确保si_errno在si_code之前,符合Linux标准布局
- 更新相关转换代码中的字段赋值顺序
Signed-off-by: longjin <longjin@DragonOS.org>
---------
Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-02 21:49:32 +08:00
Shenjie Yang
8d5ae2f9c6
fix: 更新Makefile指定的Rust工具链为nightly-2025-08-10 ( #1328 )
...
* fix: 更新一些makefile中指定的工具链
* fix: 添加novashell到app-blocklist.toml
* fix: 修改nix-dev-shell指定的rust工具链版本号为2025-08-10
* fix: 更新enable_compile_gvisor.sh,避免对其他blocked_app的意外注释
Signed-off-by: sparkzky <sparkhhhhhhhhhh@outlook.com>
---------
Signed-off-by: sparkzky <sparkhhhhhhhhhh@outlook.com>
Co-authored-by: sparkzky <sparkhhhhhhhhhh@outlook.com>
2025-11-01 15:39:46 +08:00
kaleidoscope416
e769493840
fix(syscall):修复syslog的bug ( #1327 )
...
- 在 procfs 的 syslog syscall 处理路径中增加对 SYSLOG_ACTION_READ_ALL (action = 3) 的分发。
- 直接调用现有的 Kmsg::read_all 接口,未修改 Kmsg 的实现逻辑。
- 修复了 gvisor 测试中 Syslog.ReadAll 因未分发而返回 EINVAL 的问题。
2025-10-30 13:54:11 +08:00
JingXuan_Wei
bb99d3f6ed
feat(kexec & initram):Add kexec and initram support for x86 architecture ( #1303 )
...
- Support embedding initram and using Ramfs as the file system for extracting initram
- Support kexec series system calls, including load series and reboot
- Support u-root as the root file system to boot in Go language
- Add sysfs such as boot_crams and memmap
- Add a series of peripheral system calls related to the above
Signed-off-by: JensenWei007 <jensenwei007@gmail.com>
2025-10-30 13:32:40 +08:00