Linus Torvalds released Linux 5.17-rc1 early due to a family trip, marking the end of the Linux 5.17 merge window.

We’ve seen significant I/O improvements during the recently concluded Linux 5.16 kernel merge window. Maintainers, represented by Jens Axboe, focus on persistently optimizing blocks and IO_uring code to achieve higher IOPS operational efficiency. Looking ahead to Linux 5.17, work in this area will not be standing still. After all, during the Linux 5.16 development cycle, there is still a lot of unresolved work waiting for developers to complete.


It is reported that in the Linux 5.16 merge window, most of Jens Axboe’s work revolves around I/O optimization to maximize the per-core IOPS performance of the Intel Optane NVMe SSD on the AMD Ryzen R9-5950X platform.

Just days after the 5.16 merge window closed, Axboe has now submitted four more NVMe code patches to take advantage of the new hooks in Linux 5.16 for allocating and completing I/O batches.


For NVMe drives, this also means they can copy multiple commands at once. Tests have shown that the new revision brings about a 500k IOPS improvement per core, or a 5~6% increase in efficiency.

As for other I/O optimization work, it will continue to be collected in the perf-wip branch. So far, we’ve seen 38 new patches added to the repository after the Linux 5.16 merge window closed.

Finally, Jens Axboe revealed that he is building an Intel Core i9-12900K platform for comparison with the AMD Ryzen R9-5850X platform, and looks forward to bringing more storage performance optimizations to the Alder Lake front in the future.

As for the first RC release of Linux Kernel 5.17, Linus concluded: “5.17 doesn’t seem to be a big release, everything seems to be working fine at the moment. This release includes changes in some obscure modules (rewriting random number generation) Server and fscache), even with a complete rewrite, the fscache change looks more like a blip. Other than that, the overall changes are regular updates, such as updating drivers, updating architecture, documentation, and tools.”

The Linux 5.17 kernel also provides support for many new hardware, such as support for Qualcomm’s latest SoCs, the introduction of new real-time analysis tools, “straight line speculation” mitigation for x86 vulnerabilities, optimized networking capabilities, and more.

Further reading: Linux 5.17 introduces “RTLA”: a real-time Linux performance analysis and tracking tool

由于家庭旅行,Linus Torvalds 提前发布了 Linux 5.17-rc1,这标志着 Linux 5.17 合并窗口已结束。

在最近结束的 Linux 5.16 内核合并窗口期间,我们已经见证了重大的 I/O 改进。以 Jens Axboe 为代表的维护者,专注于坚持不懈地优化块和 IO_uring 代码,以达成更高的 IOPS 操作效率。展望 Linux 5.17,这方面的工作也不会原地踏步。毕竟 Linux 5.16 开发周期内,还有不少未决的工作等待开发者去完成。


据悉,在 Linux 5.16 合并窗口中,Jens Axboe 的大部分工作都围绕 I/O 优化而展开,以期最大限度地提升 AMD 锐龙 R9-5950X 平台上的英特尔傲腾 NVMe SSD 的每核 IOPS 性能。

就在 5.16 合并窗口关闭几天后,Axboe 现又提交了四个 NVMe 代码补丁,以充分利用 Linux 5.16 中关于分配和完成 I/O 批次的新钩子。


对于 NVMe 驱动器来说,这也意味着它们能够一次复制多个命令。测试表明,新修订带来了每核大约 500k IOPS 的改进、或 5~6% 的效率提升。

至于其它 I/O 优化工作,将继续在 perf-wip 分支中收集。截至目前,我们已在 Linux 5.16 合并窗口关闭后,看到了 38 个添加至该存储库的新补丁。

最后,Jens Axboe 透露自己正在搭建英特尔酷睿 i9-12900K 平台,以便和 AMD 锐龙 R9-5850X 平台开展比较、并且展望在将来为 Alder Lake 前端带来更多存储性能优化。

对于 Linux Kernel 5.17 的首个 RC 版本,Linus 总结道:“5.17 似乎不会是一个大版本,目前一切看起来都很正常。此版本在一些不起眼的模块进行了改动(重写了随机数生成器和 fscache),即便是完全重写,fscache 的变化看起来更像是一个小插曲。除此之外,整体的变化仍是常规更新,例如更新驱动程序、更新架构、文档和工具。”

Linux 5.17 内核还为许多新的硬件提供了支持,例如支持高通最新的 SoC,引入新的实时分析工具、针对 x86 漏洞的“直线推测”缓解、优化网络功能等等。

延伸阅读:Linux 5.17 引入“RTLA”:实时 Linux 性能分析与追踪工具




Protocol Location
RSYNC rsync://
Latest Release
mainline: 5.17-rc1 2022-01-23 [tarball] [patch] [view diff] [browse]
stable: 5.16.2 2022-01-20 [tarball] [pgp] [patch] [inc. patch] [view diff] [browse] [changelog]
longterm: 5.15.16 2022-01-20 [tarball] [pgp] [patch] [inc. patch] [view diff] [browse] [changelog]
longterm: 5.10.93 2022-01-20 [tarball] [pgp] [patch] [inc. patch] [view diff] [browse] [changelog]
longterm: 5.4.173 2022-01-20 [tarball] [pgp] [patch] [inc. patch] [view diff] [browse] [changelog]
longterm: 4.19.225 2022-01-11 [tarball] [pgp] [patch] [inc. patch] [view diff] [browse] [changelog]
longterm: 4.14.262 2022-01-11 [tarball] [pgp] [patch] [inc. patch] [view diff] [browse] [changelog]
longterm: 4.9.297 2022-01-11 [tarball] [pgp] [patch] [inc. patch] [view diff] [browse] [changelog]
longterm: 4.4.299 2022-01-11 [tarball] [pgp] [patch] [inc. patch] [view diff] [browse] [changelog]
linux-next: next-20220124 2022-01-24 [browse]