从这个网页截图中,我们可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 问题:在多包WQE(Work Queue Entry)传输中,错误地在没有DMA映射的情况下进行unmap操作。 - 原因:多包WQE传输代码试图获取DMA映射,但在IOMMU(Input/Output Memory Management Unit)压力下,IOMMU驱动器可能无法为页表分配更多内存。当代码尝试在错误的路径中处理此问题时,它错误地从sq(发送队列)的FIFO列表中删除了一个活动映射条目。由于当前的映射尝试失败,这个unmap操作会删除一些随机的DMA映射,这可能会导致PCI功能处于错误状态。 2. 修复措施: - 修复代码:修复了在没有DMA映射的情况下进行unmap操作的问题。 - 修复范围:修复了在多包WQE传输中,当没有DMA映射时,错误地删除了sq的FIFO列表中的一个活动映射条目。 3. 修复范围: - 修复的代码文件:drivers/net/ethernet/mellanox/mlx5/core/en_tx.c - 修复的代码行数:1行代码被修改。 4. 修复历史: - 上游提交:2bcae12c795f32ddfbf8c80d1b5f1d3286341c32 - 修复提交:fc357e78176945ca7bcaccf92ab794b9ccd41b4f4 5. 修复者: - 作者:Gerd Bayer - 提交者:Greg Kroah-Hartman - 审查者:Zhu Yanjun - 认可者:Maxim Mikityanskiy - 签署者:Saeed Mahameed - 签署者:Sasha Levin 6. 补丁状态: - 补丁状态:已修复,修复了在没有DMA映射的情况下进行unmap操作的问题。 这些信息可以帮助我们了解这个漏洞的背景、修复过程和修复范围,从而更好地评估其影响和修复效果。