Commit Graph

12 Commits

Author SHA1 Message Date
LoGin de4ee15bc8
feat: 引入RootFS清单系统并重构DADK配置 (#1776)
- 新增RootFS清单系统,支持通过ROOTFS_MANIFEST环境变量选择不同配置
- 重构DADK配置生成逻辑,移除旧的dadk-manifest.toml和rootfs.toml
- 更新构建系统以支持清单解析和动态配置生成
- 改进用户态包管理,支持按清单切换包集合
- 升级DADK到v0.6.1并更新相关工具链

Signed-off-by: longjin <longjin@DragonOS.org>
2026-02-10 13:28:34 +08:00
Samuel Dai 92c81deea3
feat(dev): Add devcontainer support base on cnb image (#1449)
* feat(dev): add devcontainer support base on cnb image, remove default installation of grub during disk creation

* fix(ci): Change source to github from default mirror server
2025-12-11 11:42:52 +08:00
LoGin f2cca87d2b
refactor(wait_queue): 重构等待队列机制,引入Waiter/Waker模式 (#1452)
* refactor(wait_queue): 重构等待队列机制,引入Waiter/Waker模式

- 重构WaitQueue,引入Waiter/Waker模式避免唤醒丢失
- 统一等待接口,提供wait_event_interruptible/uninterruptible方法
- 重构futex、epoll、eventfd、semaphore、completion等模块使用新等待队列
- 优化进程等待子进程退出逻辑,使用新等待队列接口
- 添加等待队列设计文档说明新机制

Signed-off-by: longjin <longjin@DragonOS.org>

* feat: 添加SKIP_GRUB选项以支持在CI或无图形界面环境中跳过GRUB安装

Signed-off-by: longjin <longjin@DragonOS.org>

* fix: 修复信号处理和futex唤醒的错误码

- 在sys_rt_sigtimedwait中消费信号后及时刷新HAS_PENDING_SIGNAL状态,避免后续等待路
径误判
- 将futex可中断唤醒的错误码从ERESTARTSYS改为EINTR,以符合Linux语义

Signed-off-by: longjin <longjin@DragonOS.org>

* ci: Update Docker image source in test-x86 workflow

- Changed the Docker image source from `docker.cnb.cool/dragonos-community/dragonos/dragonos-dev:v1.19` to `dragonos/dragonos-dev:v1.19` for consistency in CI workflows.

Signed-off-by: longjin <longjin@DragonOS.org>

---------

Signed-off-by: longjin <longjin@DragonOS.org>
2025-12-10 14:04:05 +08:00
Samuel Dai c989c6b13b
feat(ci): Bump build container to v1.19 and CI fixes (#1442)
* Bump build container to v1.18 and CI fixes

Add --ci install mode and APT_FLAG (--no-install-recommends) to
bootstrap.sh, skip grub/docs on CI, and remove legacy RUST_VERSION_OLD
install steps. Use --no-install-recommends in Dockerfile, adjust build
scripts and BUILD_CONTAINER_VERSION, and apply minor whitespace and echo
message updates.

* chore: 更新DADK版本至v0.5.1并调整构建脚本

- 将DADK安装版本从v0.5.0升级至v0.5.1
- 调整bootstrap.sh中install_python_pkg的调用位置,确保在CI和非CI环境下都能正确执行
- 更新DragonReach的git修订版本号

Signed-off-by: longjin <longjin@DragonOS.org>

* ci: 更新CI工作流中的Docker镜像源

- 将所有工作流中的容器镜像源从
``dragonos/dragonos-dev:v1.18``更改为
``docker.cnb.cool/dragonos-community/dragonos/dragonos-dev:v1.18``

Signed-off-by: longjin <longjin@DragonOS.org>

* ci: Bump build container to v1.19 and add riscv64 libc

Add linux-libc-dev-riscv64-cross to the Ubuntu/Debian bootstrap install
list to provide riscv64 cross libc headers for cross-compilation.

* ci: 更新CI工作流中的Docker镜像仓库地址

Signed-off-by: longjin <longjin@DragonOS.org>

---------

Signed-off-by: longjin <longjin@DragonOS.org>
Co-authored-by: longjin <longjin@DragonOS.org>
2025-12-09 13:59:57 +08:00
LoGin 1e6ccecc17
fix(ci): 修复CI流程中测试失败但返回成功状态的问题 (#1403)
- 移除syscall测试的continue-on-error配置,确保测试失败时CI流程正确失败
- 优化上传步骤的条件判断,使用always()确保上传步骤始终执行
- 改进dry-run模式输出,添加verbose选项显示详细信息
- 修复API密钥检查逻辑,在密钥不存在时使用dry-run模式继续执行

Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-24 13:32:02 +08:00
LoGin 690602368c
ci: 更新构建容器版本至v1.17 (#1399)
将容器内的镜像源改为crates.io

Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-22 00:43:23 +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 1596425060
ci: 升级构建容器版本至v1.16 (#1381)
- 更新所有CI工作流文件中的容器镜像版本
- 修改构建脚本中的容器版本引用
- 更新构建容器版本配置文件
- 移除fork测试中的COWSegment测例

Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-18 00:27:02 +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 8215106866
ci: 增强syscall测试监控脚本的健壮性 (#1364)
- 添加超时配置和进程自动检测机制
- 改进资源清理和错误处理逻辑
- 增加详细的诊断信息和进度报告
- 优化测试流程监控和超时处理

Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-12 15:31:15 +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
黄铭涛 b74420f48e
feat(test): 增加系统启动后执行syscall集成测试的make命令并将其加入流水线中 (#1306)
* feat(test): 增加系统启动后执行syscall集成测试的make命令并将其加入流水线中
2025-10-09 22:34:51 +08:00