从这个网页截图中,我们可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 标题:btrfs: do not clear page dirty inside extent_write_locked_range() - 描述:在subpage + zoned case中,特定的工作负载可能导致在卸载时出现rsv数据泄漏。 2. 工作负载: - 通过以下命令执行: - 具体步骤包括: 1. 创建btrfs文件系统。 2. 挂载文件系统。 3. 运行fsstress工具进行压力测试。 3. 错误日志: - dmesg日志中包含rsv数据泄漏的警告信息。 4. 问题原因: - 在缓冲写操作中,脏页被写入了inode的特定范围。 - 直接IO写操作开始时,覆盖了缓冲写操作的脏页范围。 - 在写回缓冲区时,覆盖了缓冲写操作的脏页范围。 - 在写回缓冲区时,覆盖了缓冲写操作的脏页范围。 5. 修复方法: - 修改extent_write_locked_range()函数,不再在该函数内部清除脏页标记。 6. Diffstat: - 代码更改的统计信息,显示了文件和行的更改情况。 7. 审查和签名: - 代码更改已通过Johannes Thumshirn、Qu Wenruo和David Sterba的审查和签名。 这些信息详细描述了漏洞的背景、原因和修复方法,有助于理解问题的根源和解决方案。