]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blobdiff - drivers/net/ethernet/myricom/myri10ge/myri10ge.c
myri10ge: fix an incorrect free for skb in myri10ge_sw_tso
[mirror_ubuntu-jammy-kernel.git] / drivers / net / ethernet / myricom / myri10ge / myri10ge.c
index c1a75b08ced7e6ed5d89f9697dfe50e66fd7a424..052696ce50963c6d2ca36e07deaac8c1211c8929 100644 (file)
@@ -2900,11 +2900,9 @@ static netdev_tx_t myri10ge_sw_tso(struct sk_buff *skb,
                status = myri10ge_xmit(curr, dev);
                if (status != 0) {
                        dev_kfree_skb_any(curr);
-                       if (segs != NULL) {
-                               curr = segs;
-                               segs = next;
+                       skb_list_walk_safe(next, curr, next) {
                                curr->next = NULL;
-                               dev_kfree_skb_any(segs);
+                               dev_kfree_skb_any(curr);
                        }
                        goto drop;
                }