高性能存储SIG月度动态:重构和优化fuse,推动containerd社区支持erofs

简介: 一键查看10月高性能存储SIG项目进展。

本次月报综合了 SIG 在 9、10 两个月的工作进展,包含多项新特性、优化、Bugfix 等。

一、SIG 整体进展

  • 重构和优化 fuse 代码,为接下来的 writeback 性能优化特性做准备。
  • containerd erofs snapshotter PR 已提交,社区 review 讨论中。

二、项目具体进展

1、Cloud Kernel

cve

[Bugfix] CVE-2024-43882:修复 exec 权限检查存在的 ToCToU。(PR#3874)

[Bugfix] CVE-2024-46744:squashfs 检查软链接的 inode size。(PR#3887)

[Bugfix] CVE-2024-45003:修复 inode evict 可能存在的死锁。(PR#3896)

[Bugfix] CVE-2024-45025:修复 close_range() 存在的 bitmap corruption。(PR#3906)

[Bugfix] CVE-2024-38583:修复 nilfs2 log writer thread UAF。(PR#3951)

[Bugfix] CVE-2024-42265:do_dup2() 获取 fd[fd] 增加保护。(PR#3960)

[Bugfix] CVE-2024-41014:xlog_recover_process_data() 增加边界检查。(PR#3973)

erofs

[Bugfix] 社区上游补丁回合。(PR#3904/PR#3908)

支持文件挂载的特性已合入社区主线。

在 containerd 社区发起讨论支持 erofs snapshotter,PR 已提交,社区 review 中。

ext4

[Bugfix] 社区 stable 补丁回合。(PR#3794/PR#3968)

[Optimization] 优化 EXT4_GROUP_INFO_WAS_TRIMMED_BIT 清理逻辑。(PR#3975)

xfs

[Feature] 6.6 内核支持 dax reflink。(PR#3831)

[Bugfix] 修复关闭 CONFIG_FS_DAX 的编译错误。(PR#3970/PR#3971)

[Bugfix] 启用 atomic write 过程中正确检查 i_blocks。(PR#4008)

io_uring

[Bugfix] 修复并发创建 percpu sqthread 的 race。(PR#3845)

fuse/virtio-fs

[Bugfix] 社区上游补丁回合。(PR#3810/PR#3809)

[Bugfix] 修复 virtio-fs 加载 >4M 的模块发生 IO hang。(PR#3843)

[Optimazation] virtio-fs request queuing 代码重构。(PR#3927/PR#3931)

[Optimazation] fuse writeback 等代码重构。(PR#3936/PR#3953)

[Feature] virtio-fs 增加 tag 和 queue mapping 的 sysfs 接口。(PR#3954/PR#3986)

[Optimization] fuse 代码清理和重构。(PR#3985/PR#4001)

block

[Bugfix] 移除 blk-mq "running from the wrong CPU" 告警。(PR#3817)

[Bugfix] 修复 blk-iocost race 场景导致的空指针访问。(PR#3840)

[Bugfix] 社区 stable 补丁回合。(PR#3967)

[Bugfix] virtio-blk 移除 virtio_queue_rq() 的 BUG_ON。(PR#3976)

misc

[Bugfix] 修复 nfs4_do_reclaim() 异常分支内存泄露。(PR#3868)

2、dsms

梳理 ceph 和 rbd 稳定性补丁,待提交 PR 合入 ANCK 主线。

更多详细进展,请参见项目主页:https://gitee.com/anolis/dsms

相关链接:

高性能存储 SIG 主页:https://openanolis.cn/sig/high-perf-storage

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


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


更多龙蜥SIG主页点击查看:https://openanolis.cn/sig

相关文章
|
存储 自然语言处理 固态存储
ublk:来自Linux社区的新热点,基于io_uring的全新高性能用户态块设备
如果您想快速了解ublk的意义、作用及性能,请直接看第二节Q&A部分。一、简介用户态块设备,就是提供/dev/ublkbX这样的标准块设备给业务,业务读写这个块的实际IO处理由您编写的用户态的代码决定。这就好比您使用FUSE,所有对挂载于FUSE的目录的读写都是您编写的IO handler来处理一样。使用用户态块设备,您可以方便地向上层业务以块设备/dev/ublkbX的形式提供您的自定义
|
存储 缓存 Kubernetes
秒级启动万个容器,探秘阿里云容器镜像加速黑科技
阿里云容器与存储团队展开合作,利用DADI加速器支持镜像按需读取和P2P分发,实现3.01秒启动10000个容器,完美杜绝容器冷启动的数分钟漫长等待,以及镜像仓库大规模并行分发场景下的网络拥堵。
5929 0
秒级启动万个容器,探秘阿里云容器镜像加速黑科技
|
存储 缓存 安全
virtiofs per-inode DAX 介绍
## 背景信息 1. 什么是 virtiofs? virtiofs 是一种用于在 host/guest 之间共享文件的文件系统,由 Redhat 开源,它使得不同 guest 之间能够以快速、一致、安全的方式共享同一个 host 目录树结构,目前广泛应用于 Kata Container 作为容器的 rootfs。 2. 什么是 DAX? DAX (Direct Access) 最初是针对于
3633 0
virtiofs per-inode DAX 介绍
|
监控 调度 开发工具
IO神器blktrace使用介绍
## 前言 1. blktrace的作者正是block io的maintainer,开发此工具,可以更好的追踪IO的过程。 2. blktrace 结合btt可以统计一个IO是在调度队列停留的时间长,还是在硬件上消耗的时间长,利用这个工具可以协助分析和优化问题。 ## blktrace的原理 一个I/O请求的处理过程,可以梳理为这样一张简单的图: ![](http://image
21459 0
|
Rust 数据可视化 安全
Rust性能分析工具概览:perf、flamegraph 与其他
Rust作为一种高性能、内存安全的编程语言,在构建大型系统和微服务时备受青睐。然而,优化Rust程序的性能需要有效的工具。本文将对Rust中常用的性能分析工具进行介绍,包括perf、flamegraph等,并探讨它们如何帮助开发者定位和解决性能瓶颈。
1592 1
|
定位技术
appium--多点触控
appium--多点触控
|
人工智能 算法 前端开发
打破传统叙事逻辑,构建基于原子化任务的人机交互
在复杂中后台设计中,为解决配置变更影响多场景问题,提出结合正向和逆向信息架构,采用原子化任务,动态组合任务,降低用户和开发成本,优化体验并改变已有的产品迭代和人机交互模式。未来可能发展为AI自动根据业务规则和用户行为生成最佳方案。
|
XML 编解码 文字识别
PyMuPDF 1.24.4 中文文档(八)(4)
PyMuPDF 1.24.4 中文文档(八)
879 1
|
Linux 测试技术 调度
Linux调度器何时需触发抢占?—— 从hackbench谈起
作者:何惟禹 吴一昊一、背景:性能之战“不服跑个分”虽然已经沦为手机行业的调侃用语,但在操作系统领域仍然是最重要的评价方式之一。本文的故事也源于一次 Alinux3 与 CentOS8 的一次跑分的较量。当然比分较量并不是目的,更重要的是发现存在的回归缺陷并进行修复,最终让 Alinux3 全方位持平或超过 CentOS8。在本次较量中,我们使用 hackbench 作为跑分软件,我们在测试过程中
3245 0
Linux调度器何时需触发抢占?—— 从hackbench谈起

热门文章

最新文章