Cloud Kernel SIG 季度动态:发布ANCK 6.6-003版本,支持一测多证

简介: 一键了解Cloud Kernel SIG 各项目进展。

Cloud Kernel SIG(Special Interest Group):支撑龙蜥内核版本的研发、发布和服务,提供生产可用的高性价比内核产品。

01 SIG 整体进展

  • 发布 ANCK 6.6-003 版本。
  • 一测多证流程建立。
  • OOT 驱动基线更新。
  • 海光平台适配进展更新。
  • Virtio-blk驱动支持 io_uring passthrough 特性。

02 ANCK 6.6-003 版本更新

发布时间: 2025-03-28

发布链接:

调度

  • EEVDF 特性补完,支持 task 和 cgroup 自定义 slice。

内存

  • 支持页表页绑核分配,避免页表页跨 NUMA 访问。
  • 支持 OOT 内存隔离特性。
  • 回合社区 THP undersued split 特性,避免 THP 造成的 memory bloat。
  • 支持代码段锁定特性,避免代码段 pagecache 引起的回收颠簸。
  • 回合社区 tmpfs 支持 large folio 的特性。
  • 增强 memcg 统计。
  • 支持 memcg 级别的 min wartermark 设置的特性,混布场景中避免离线对在线的影响。
  • 回合 pagefault 错误处理的优化补丁集,提升 pagefault 性能。
  • 支持 pagecache 分配的 mTHP 控制。
  • 支持 pagecache 预留和 pagecache 限制特性,适用不同场景对 pagecache 的管理。
  • 支持 memcg 异步回收特性,混布场景中避免离线对在线的影响。
  • 回合社区 mTHP 统计相关补丁集。
  • 支持 memcg OOM 优先级的特性,混布场景优先杀死离线业务。
  • 支持僵尸 memcg 后台回收特性,避免僵尸 memcg 积累对系统造成抖动。
  • 回合社区文件页 shmem 的 mTHP collapse 特性。
  • 回合社区 shmem 支持 large folio 的 swap-out 和 swap-in,避免 large folio 被 split。
  • 回合匿名页支持 large folio swap-in 特性,避免 large folio 被 split。
  • 回合社区 shmem 支持 mTHP 特性。
  • 回合匿名 mTHP 统计相关补丁。
  • 回合支持匿名页 mTHP 的 swap-out,避免被 split。
  • 回合 numa balancing 支持 mTHP 提升 numa balancing 性能。
  • 回合 compaction 支持 mTHP 特性。
  • 回合匿名页支持 mTHP 的分配。
  • 回合 unamp/zap 流程对 mTHP 的 batch 优化。
  • 回合 fork 对 mTHP 的 batch 优化。
  • 回合 rmap 的清理和优化补丁集,更好的支持 mTHP。
  • 回合匿名页 mTHP 透明支持 Arm 的 cont-pte 特性,更好的优化 TLB miss。
  • 回合 mlock 支持 mTHP 特性。
  • 内存领域若干稳定性问题解决。
  • 修复 hwpoison 隔离 UCE 失败回退问题。

网络

  • virtio-net:对于 control queue 队列增加 timeout 限制控制消息等待时间防止导致整体卡死。
  • udp:优化了有连接 udp 的接收方哈希查找性能。
  • 网络相关 bpf 改动:
  • tp_btf 添加 skb dynptr 支持。
  • BPF_SOCK_OPS_RTT_CB 提供 mrtt 和 srtt 信息。
  • selftests:修复 udpgro 相关 selftest 问题。

BPF

  • 支持内核模块注册 struct_ops。
  • 支持 task、task_vma、task_css、css 的 open-code 迭代器。

存储

  • 公共
  • cgroup writeback 在使能 cgroup v2 场景无需执行 memcg_blkcg_tree 相关操作,优化无效的开销。
  • 支持 uncached buffer IO,该特性在大压力下显著提升 buffer IO 性能。
  • fuse/virtio-fs
  • fuse 修复 FUSE_NOTIFY_RESEND 通知类型的问题。
  • fuse writeback 代码重构和优化。
  • fuse 社区主线 bugfix 同步。
  • fuse 支持 folio。
  • virtio-fs 支持多队列。
  • virtio-fs 代码清理,并修复一些稳定性问题。
  • virtio-fs 增加 tag 和 queue map sysfs 接口。
  • xfs
  • 支持 dax reflink 特性。
  • erofs
  • 社区主线特性和 bugfix 同步。
  • ext4
  • 社区主线 bugfix 同步。

Arm 平台

  • 回合 Arm Coresight PMU 驱动。
  • 回合 Arm SPE 中 data source 拓展 Neoverse V2。
  • 回合 SMMU SVA 补丁。
  • 修复 ARM KVM 模块化后 VMID 被复用导致使用脏 TLB 问题。
  • 支持同步 UCE 错误在 task work 中同步处理。
  • 支持 mpam 开关控制。

龙芯平台

  • 新增特性:
  • 增加龙芯平台 SE 模块 ACPI 驱动支持。
  • 增加龙芯虚拟机 AVEC 中断支持。
  • 重要 Bugfix:
  • 修复 lscpu 显示结果中 cache 信息错误问题。
  • 修复 intel 网卡驱动加载报非对齐访问错误问题。
  • 修复 rtc 中断重复触发问题。
  • 修复在 cgroup v2 中无法对 cpu 进行控制问题。
  • 修复 docker stats 中 cpu 占用率显示为 0 的问题。
  • 修复服务器单节点启动时启动失败问题。
  • 修复重启压力测试中,虚拟机挂死问题。
  • 修复物理机睡眠唤醒虚拟机挂死。
  • 修复虚拟机启动后物理机日志信息报错问题。
  • 修复物理机启动后系统日志报错问题。

驱动

  • 回合一些 PCIe、ACPI 以及 SMMUv3 的 Bugfix 补丁,增强稳定性。
  • coresight:
  • 支持使用 per-sink trace ID 映射 perf session。
  • 拆分 sysfs 和 perf usage。
  • trbe:支持 ACPI 的设备加载。
  • cxl:
  • 修复一些 bug,并且增加一些 trace event。
  • 支持 RCH RAS 特性。
  • erdma:支持 smc。
  • vfio:回合一些上游的补丁,增强一些 PCI 特性的支持。
  • virtio:修复一些 bug。

Perf

  • 回合 dwc_pcie_pmu 修复补丁。

03 一测多证

一测多证,旨在认证龙蜥衍生版 OS 与 Anolis OS 的硬件兼容性互通性。通过该认证的衍生版 OS,其 Ancert 测试结果可直接录入龙蜥硬件兼容性列表。目前,一测多证流程社区流程已经建立,浪潮 KOS 5.8 SP2 已作为标杆案例成功完成认证。

更多信息请移步该链接:

https://openanolis.cn/sig/Cloud-Kernel/doc/1320117912455741462

04 OOT 驱动基线更新

OOT 驱动基线新增以下驱动:

  • 联动天翼存储 OOT 驱动 sxe、ps3stor:
  • 云脉芯联网卡 OOT 驱动 xscale:
  • 海思网卡 OOT 驱动 hns3、hinic:
  • 网迅网卡 OOT 驱动 txgbe、ngbe:

05 海光平台适配进展

  • 修复海光 family 18h model 4h-10h 的各种问题:
  • 增加 model 10h 的 EDAC,IOAPIC 支持:
  • 增加 model 7h-8h EDAC,NB 支持:
  • 为海光 GPIO controller 添加 device HID 支持:
  • 开启海光大内存拷贝优化 kconfig:
  • 优化 vTKM 性能 & TDM 检测失败的 bugfix:
  • DF PMU 适配 Hygon 8h 平台:

06 virtio-blk 支持 io_uring passthrough 特性

Virtio-blk 驱动中引入 io_uring passthrough 特性。

基于i o_uring passthrough 的 Virtio-blk 直通方案,可通过绕过通用块层,减小 I/O 路径上内核栈开销。并且通过新增的双向命令,在后端支持解析的情况下,可以减少 I/O 交互次数,提高带宽利用率。

具体如下:

1) 该特性通过给 Virtio-blk 添加一个通用字符接口,并为 Virtio-blk 驱动支持 io_uring 的 uring_cmd 特性,允许用户态进程借助 io_uring 框架,在 bypass 通用块层的情况下,直接向 Virtio-blk 驱动发送 WRITE、READ 类命令。

2)支持在 Virtio-blk passthrough 通道内单条命令包含“读写双向I/O”,即单条I/O命令中既包含写缓冲区,又包含读缓冲区。

更多信息请参考该链接:

https://gitee.com/anolis/cloud-kernel/pulls/4272

相关链接:

Cloud Kernel SIG 主页:

https://openanolis.cn/sig/Cloud-Kernel

注:更多龙蜥 SIG 月度动态可点击这里查看。

—— 完 ——

相关文章
|
8月前
|
人工智能 Linux 开发工具
携手龙蜥,Alinux 最佳 AI 镜像服务商公布,堡塔、飞致云等 6 家企业实力登榜
广东堡塔、杭州飞致云、北京君云时代、网久软件、云九天网络、计算巢社区 6 家优质服务商伙伴。
|
8月前
|
安全 算法 中间件
OASA 厂商三未信安完成与 Anolis OS 及其衍生版适配,密码卡性能与稳定性获验证
验证了 Anolis OS 能够满足用户对于数据保护和隐私安全的高标准要求,可以为广大用户提供更可靠的数据保护。
|
8月前
|
人工智能 运维 监控
SysOM AI 可观测体系:零侵入、低开销,让系统透明化
能够帮助开发者和运维人员实时监控和分析 AI 作业的运行状态,及时发现并解决性能瓶颈,从而提升整体效率和可靠性。
SysOM AI 可观测体系:零侵入、低开销,让系统透明化
|
2月前
|
存储 人工智能 安全
《Confidential MaaS 技术指南》发布,从 0 到 1 构建可验证 AI 推理环境
Confidential MaaS 将从前沿探索逐步成为 AI 服务的安全标准配置。
|
监控 调度 开发工具
IO神器blktrace使用介绍
## 前言 1. blktrace的作者正是block io的maintainer,开发此工具,可以更好的追踪IO的过程。 2. blktrace 结合btt可以统计一个IO是在调度队列停留的时间长,还是在硬件上消耗的时间长,利用这个工具可以协助分析和优化问题。 ## blktrace的原理 一个I/O请求的处理过程,可以梳理为这样一张简单的图: ![](http://image
20426 0
|
4月前
|
缓存 Linux 云计算
OOM 杀进程 or 应用卡顿?该如何抉择
阿里云操作系统控制台推出了 FastOOM 功能,支持节点以及 Pod 级别的用户态 OOM 配置,通过提前介入杀进程的方式避 Near-OOM 导致的抖动夯机。
272 0
|
8月前
|
缓存 运维 前端开发