从这个网页截图中,我们可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 标题:net: systemport: fix potential memory leak in bcm_sysport_xmit() - 描述:BCM_SYSPORT Ethernet MAC driver在处理DMA映射失败时,返回NETDEV_TX_OK而不释放skbuff,导致潜在的内存泄漏。修复了这个问题。 2. 修复措施: - 在代码中添加了 函数来释放skbuff。 3. 补丁来源: - Upstream commit:c401ed1c709948e57945485088413e1bb5e94bd1 - 补丁链接:https://patch-msgid.link/20241014145115.44977-1-wanghai38@huawei.com 4. 补丁签名: - 补丁提交者:Wang Hai - 补丁签署者:Jakub Kicinski 和 Sasha Levin 5. 补丁文件: - 文件路径:drivers/net/ethernet/broadcom/bcmsysport.c - 文件内容: ```c static netdev_tx_t bcm_sysport_xmit(struct sk_buff skb, struct net_device dev) { ret = NETDEV_TX_OK; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->len; skb->len = skb->len + skb->data; skb->data = skb->data + skb->len; skb->len = skb->len - skb->data; skb->data = skb->data - skb->