使用EXT4文件系统的Linux 6.5将拥有更快的并行直接I/O覆写性能

使用EXT4文件系统的Linux6.5将拥有更快的并行直接I/O覆写性能通过FIO这个补丁,他的测试案例从8724KiB/s提高到1565MiB/s。获取补丁:https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git/commit/?h=dev&id=310ee0902b8d9d0a13a5a13e94688a5863fa29c2Foster在补丁中解释说:"我们有报告说,由于ext4中增加了排他性限制,子块(无对齐)直接写入的性能明显下降。对不对齐直接写入的排他性要求的目的是为了避免iomapdio层中未序列化的部分块清零在重叠写入中造成的数据损坏。XFS由于同样的基本原因也有类似的要求,但却没有像ext4那样遭受极端的性能退步。原因是XFS利用了IOMAP_DIO_OVERWRITE_ONLY模式,该模式允许主动提交并发的无对齐I/O,并踢回需要部分块清零的写操作,以便它们可以在一个安全、排他的上下文中提交。由于ext4已经在提交前执行了大部分这些检查,它可以支持类似的做法,而不一定要依赖iomap标志和相关的重试机制。更新dio写提交路径,以允许同时提交不对齐的直接写操作,这些写操作是纯粹的覆盖,所以不需要块清零。"Linux6.5的EXT4更新的完整列表可以通过这个拉动请求找到:https://lore.kernel.org/lkml/[email protected]/...PC版:https://www.cnbeta.com.tw/articles/soft/1367887.htm手机版:https://m.cnbeta.com.tw/view/1367887.htm

相关推荐

封面图片

Linux 6.5更新了英特尔GDS/DOWNFALL和AMD INCEPTION漏洞补丁

Linux6.5更新了英特尔GDS/DOWNFALL和AMDINCEPTION漏洞补丁此次合并为Zen3和Zen4添加了围绕缓解AMD投机性返回地址堆栈(RAS)溢出漏洞的内核部分:https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=138bcddb86d8a4f842e4ed6f0585abc9b1a764ff有关AMDINCEPTION披露的详细信息,请参阅我们之前发布的文章。为AMD处理器上的投机性RAS(返回地址栈)溢出漏洞添加缓解措施。简而言之,这又是一个用户空间毒害微架构结构的问题,该结构可通过侧信道泄漏特权信息。Linus还合并了围绕IntelGatherDataSampling(GDS)/DOWNFALL的内核变更。请参阅英特尔DOWNFALL漏洞概述,了解影响Skylake到IceLake/Tigerlake处理器的该问题的详细信息:https://downfall.page/AMD和英特尔处理器都需要微码更新,这些更新将随时推送:https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00837.htmlhttps://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00836.html周二补丁还包括内核的Xen安全修复。这些安全补丁现已发布在Linux6.5内核的LinuxGit中,并将在未来几天内向Linux稳定版系列回传。...PC版:https://www.cnbeta.com.tw/articles/soft/1375807.htm手机版:https://m.cnbeta.com.tw/view/1375807.htm

封面图片

英特尔发布Linux系统下的CPU微代码更新

英特尔发布Linux系统下的CPU微代码更新tip.git的x86/microcode分支对Linux内核的x86微代码处理进行了初步改进。这些补丁删除了一些无用的互斥,丢弃了一些旧的调试代码,并使CPU微代码加载支持在基于x86的系统上不再是一个选项,而是始终启用。在英特尔和AMD系统上,任何需要微码加载支持的"合理配置",现在都会启用该选项。早先的x86微代码加载改进至少已在TIP中排队等候,很可能成为即将到来的Linux6.6周期的一部分:https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/log/?h=x86/microcode英特尔至强Max服务器CPUThomasGleixner一直在领导改进英特尔Linux系统后期微码加载的工作。他在这个补丁系列中解释说:"企业用户希望延迟加载微代码。延迟加载是有问题的,因为它需要详细了解变更,并分析该变更是否修改了内核已经在使用的内容。大型企业客户拥有工程团队和深入的技术供应商支持。而普通管理员没有这样的资源,因此内核在后期加载后总是会有污点。英特尔最近在微码头中添加了一个新的保留字段,其中包含了CPU上必须运行的最小微码版本,以确保加载安全。在所有较旧的微代码版本中,该字段的值都是0,内核会认为这些微代码版本不安全。最小版本检查可通过Kconfig或内核命令行执行。这样,内核就会拒绝加载不安全的修订版。默认情况下,内核会像以前一样加载不安全的版本,并玷污内核。如果加载的是安全版本,内核就不会被玷污。但这并不能解决延迟加载的所有其他已知问题:-当前英特尔CPU上的延迟加载与启用超线程时的NMI相比是不安全的。如果在主处理器加载微代码时发生NMI,次处理器就会崩溃。-当微码更新修改了MWAIT时,使用MWAIT的软脱机SMT姊妹们也会造成损坏。在"nosmt"缓解措施的背景下,这是一种现实的情况。无论是核心代码还是英特尔特定代码,都根本不会处理这些问题。在尝试实现这一点时,我无意中发现了一些功能失常、复杂得可怕的冗余代码,因此我决定先清理这些代码,以便在干净的石板上添加新功能"。在Linux上,延迟加载微代码是指当系统已经启动并运行软件时,允许更新CPU微代码,而不是在CPU内核不忙的启动时间提前加载微代码。延迟加载CPU微代码对于超大规模企业、云服务提供商和其他大型企业尤其有用,因为它们希望以安全的名义快速部署CPU微代码更新,但又要避免系统宕机。目前还不清楚改进后的英特尔CPU微代码延迟加载是否能在v6.6内核中及时完成,但至少这项改进正在进行中。...PC版:https://www.cnbeta.com.tw/articles/soft/1377059.htm手机版:https://m.cnbeta.com.tw/view/1377059.htm

🔍 发送关键词来寻找群组、频道或视频。

启动SOSO机器人