Linux内核6.10第五个候选版本(RC5)发布:稳定性持续提升
Linux内核的缔造者Linus Torvalds宣布发布Linux内核6.10第五个候选版本(RC5)。6.10版本的开发进展顺利,未出现重大问题。
Torvalds在6月23日更新的Linux内核邮件列表中,对当前内核开发状态进行了概述。

Torvalds表示,6.10版本的开发到目前为止非常稳定,RC5延续了这一积极趋势。他希望这种平稳的进展能够持续到开发周期的剩余时间。
目录
- Linux内核6.10 RC5中的bcachefs修复
- 测试Linux内核6.10 RC5
Linux内核RC5的变更
有趣的是,通常占据内核更新大部分内容的设备驱动程序的更改,在RC5中只占修改的约三分之一。即使在这个类别中,大部分更改也集中在几个特定领域:
- Hyper-V气球驱动程序(hv_balloon)
- Broadcom的bnxt网络驱动程序
- 一个高通PHY(物理层)驱动程序
虽然还有其他驱动程序更新,但都没有特别广泛。
其余更改涵盖内核的各个领域:
- bcachefs文件系统修复
- 网络自测试改进
- 文档更新
- 虚拟内存(VM)增强
- 核心网络调整
- 次要的特定于体系结构的修改
Linux内核6.10 RC5中的bcachefs修复
与RC4一样,Linux内核RC5也包含许多专门针对bcachefs子系统的修复和改进。
bcachefs文件系统是Linux的一个现代写时复制(CoW)文件系统,在这个候选版本中收到了几个重要的修复。
以下是关键更改的摘要:
- 修正了bcachefs中srcu屏障的初始化顺序。
- 解决了数组索引越界的问题。
- 修复了do_discard_fast()函数中的锁问题。
- 解决了read_one_super()函数中的移位溢出问题。
- 调整了bcachefs中用于btree ID的位掩码。
- 添加了检测无效btree ID的检查。
- 改进了日志代码早期初始化阶段的错误处理。
- 消除了delete_dead_snapshots()转换为读写模式的需要。
- 实现了防止LRU_TIME_BITS溢出的安全措施。
- 增强了对缓存数据LRU环绕处理。
- 修正了bch2_sb_downgrade_update()函数。
- 更新了set_worker_desc()用于delete_dead_snapshots。
- 修复了bch2_trans_put()函数。
- 将安全错误设置为默认值以提高可靠性。
- 将BUG_ON()更改为WARN_ON()在闭包中提供更多信息性警告。
- 添加了缺少的alloc_data_type_set()函数。
- 将裸EEXIST错误替换为私有错误代码,以实现更具体的错误处理。
- 解决了bch2_inode_insert()的竞争条件路径中的I_NEW警告。
- 使用bch2_print_string_as_lines显示较长的错误消息。
- 修复了write_super()之后发生的use-after-free (UAF)问题。
Torvalds指出,RC5中的更改是多样的,但对于6.10版本来说并不异常或令人担忧。他表示,完整的变更日志可供那些对技术细节感兴趣的人使用。
测试Linux内核6.10 RC5
鼓励用户从Kernel.org网站或Linus Torvalds的git树下载最新的候选版本进行测试。
请注意,由于这些开发版本具有实验性质,因此不应在生产系统上使用。
接下来阅读:
- Linux内核6.10 RC6发布:平静而专注的更新
以上是Linux内核6.10 RC5发布:密钥更新和BCACHEFS修复的详细内容。更多信息请关注PHP中文网其他相关文章!