从这个网页截图中,可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 问题:在ext4文件系统中,当使用DAX(Direct Access)模式进行部分写入操作时,可能会导致inode大小溢出。 - 原因:DAX模式下的ext4_io_map_rw()函数在每个迭代中会分配和复制用户数据到块。如果进程在写入过程中被用户信号中断,复制的数据将被返回并添加到inode大小中,导致inode大小超过预期,可能导致fsck失败。 2. 修复措施: - 解决方案:通过在ext4_io_map_rw()函数中添加逻辑来检查写入长度是否小于预期,如果小于预期,则截断extents。 - 代码修改: - 添加了ext4_inode_extension_cleanup()函数,用于在DAX写入操作完成后清理inode。 - 修改了ext4_inode_extension_cleanup()函数,增加了对truncate操作的检查和处理。 3. 补丁细节: - 补丁位置:在fs/ext4/file.c文件中。 - 补丁内容: - 添加了对truncate操作的检查和处理。 - 修改了ext4_inode_extension_cleanup()函数的逻辑。 4. 补丁状态: - 状态:已提交到内核稳定分支。 - 作者:Zhihao Cheng。 - 审查:由Jan Kara、Zhihao Cheng、Theodore Ts'o和Greg Kroah-Hartman审查。 5. 相关链接: - Bugzilla链接:https://bugzilla.kernel.org/show_bug.cgi?id=219136 - 代码链接:https://patchwork..kernel.org/patch/20240809121532.2105494-1-chengzhihao@huaweicloud.com 这些信息表明,该漏洞已被修复,并且已经通过代码审查和提交到内核稳定分支。