关键漏洞信息 漏洞描述: - 在尝试对已删除的子卷进行快照时,Btrfs 文件系统不会中止。 - 如果用于快照的 ioctl 指向一个已删除的子卷,则会导致以下崩溃: - - - 根本原因: - 初始化新根项作为源根项的副本,包括 refs 字段,但不包括子卷的 ref。 - 调用 插入一个 ref 为 0 的根,并返回 ,导致 中止。 修复措施: - 在尝试快照之前检查源根的 refs,但在锁定 subvol_sem 以避免与删除竞争之后。 相关代码更改: - 修改了 文件,添加了对 和 的检查。 签名和审查: - 签名者:Greg Kroah-Hartman, David Sterba, Anand Jain, Sweet Tea Dorminy, Larry Bassel - 审查者:David Sterba, Anand Jain, Sweet Tea Dorminy