头图

高性能存储技术 SIG 目标:高性能存储技术兴趣组致力于存储栈性能挖掘,当前主要聚焦内核 io_uring 技术优化异步 IO 性能,使用持久化内存提升业务单成本性能,容器场景存储技术优化等课题。期望通过社区平台,打造标准的高性能存储技术软件栈,推动软硬件协同发展。

01 本月 SIG 整体进展

本月共合入 Anolis 主线 PR 16 个,包含多个主要组件的特性增强、CVE 修复,以及 bugfix 等。

继 11 月在 ANCK 5.10 增强 erofs over fscache,支持上游新特性 shared domain 和 failover 后,12 月在 ANCK 4.19 也支持这两个新特性,为 ANCK 4.19 erofs over fscache 镜像加速方案上生产环境铺平了道路。

xfs inode extent-to-btree 转换失败问题社区主线方案仍在讨论中,xfstests 用例更新已合入主线。

DSMS 开始适配 Anolis OS 的适配工作,项目文档同步开始更新至 SIG。

02 项目具体进展

1、Anolis OS

cve:CVE-2022-33981 / CVE-2022-1836(PR552)

erofs:misc bug fixes for RAFS mode(PR967),cachefiles: add missing lock protection when polling(PR1004),support shared domain feature on ANCK 4.19(PR974),support failover feature on ANCK 4.19(PR975),cachefiles: fix potential NULL in error path(PR1023)

ext4:fix BUG at mballoc(PR993),fix BUG at jbd2 commit(PR994),fix NULL pointer dereference BUG(PR995)

xfs:fix NULL pointer dereference BUG(PR996), fix two deadlocks for xfs_rename(PR1005)

block:blk-iocost: don't ignore vrate_min on QD contention(PR1021)

dax:fix wrong arg passing in dax_insert_entry(PR1013)

io_uring:fix compile error when cgroup disabled(PR968/PR972),add support for 128-byte SQEs and uring-cmd(PR1017)

2、容器镜像加速

ANCK 4.19 开始支持 shared domain 和 failover 特性,接下来会在生产环境应用 erofs over fscache 加速方案。

RAFS 模式下的相关问题修复。

page cache 共享特性原型已基本开发完毕,待整理发到社区。

3、用户态存储

已经讨论确定在 ANCK 5.10 中支持 ublk,正在合入 ublk 代码,涉及 block-mq、mm 等层适配等工作。

ebpf + io_uring 的零拷贝方案基本原型已经跑通,待整理后发起社区 RFC。

4、io_uring

ANCK 5.10 和 liburing 已经支持 128 字节 SQE 特性和 uring cmd 特性,为 ANCK 5.10 支持 ublk 作准备。

io_uring + async_simple 协程优化因人力投入进展缓慢,计划 1 月份会加快优化进度。

5、DSMS

DSMS 开始适配 Anolis OS,过程中发现缺失了一些依赖包,目前已经解决。

DSMS 后端初步计划适配 ceph,后续考虑引入 ceph 版本并在 Anolis OS 中维护起来。

相关项目文档同步开始在 SIG 中维护更新。

03 SIG 下一步计划

  1. page cache 共享特性合入上游主线,并回合到 ANCK 4.19 和 5.10。
  2. erofs over fscache 加速方案支持 fs-verity 和 encrypt 特性,合入上游主线,并回合到 ANCK 4.19 和 5.10。
  3. ANCK 4.19 和 5.10 支持 fscache daemonless 特性。
  4. ANCK 5.10 支持 ublk 高性能用户态存储方案。
  5. io_uring + ebpf 的 ublk 零拷贝方案合入社区主线,并回合到 ANCK 5.10。
  6. io_uring + async_simple 性能优化。
  7. DSMS 完成 Anolis OS 上的移植与适配。

附录:SIG 项目一览

  • io_uring
  • virtiofs
  • 容器镜像加速
  • 数据库优化
  • 用户态存储
  • DSMS

详情内容见高性能存储技术 SIG( https://openanolis.cn/sig/hig... ),欢迎各位感兴趣的开发者加入共建。

—— 完 ——


龙蜥社区
40 声望12 粉丝

OpenAnolis龙蜥社区由国内外头部企业联合建立的操作系统开源社区。