CVE-2026-80979 in Linux
摘要
由 VulDB • 2026-09-12
在 Linux 内核中,已修复以下漏洞:
net/smc: 在排空 rx tasklet 之前注销连接
smc_conn_free() 仅在链接组仍在其设备列表中时调用 smc_ism_unset_conn(),并且从未设置 conn->killed。smc_lgr_terminate_sched() 会立即取消链接该组,并将终止其连接的延迟操作推迟到一个工作项(work item)中处理。因此,在该时间窗口内被释放的连接会在 smcd_handle_irq() 中保留其 smcd->conn[] 槽位且两个门控均处于开启状态,并且设备可以在 tasklet_kill() 返回后重新启用接收任务队列(tasklet)。在 DMB-nocopy 路径上,幽灵发送缓冲区正是在此次排空后立即被释放的,因此重新启用的任务队列会对其进行解引用。
在两处拆卸点无条件地注销并在分离之前进行排空,以镜像 rmb_desc 的行为,smc_buf_unuse() 会在排空之后释放它。同时,在释放 conn->sndbuf_desc 之前将其清除,以便采样该指针的读者无法获取到已被释放的对象。
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.