Commit 2cec4448 authored by Jason A. Donenfeld's avatar Jason A. Donenfeld Committed by David S. Miller
Browse files

net: openvswitch: use skb_list_walk_safe helper for gso segments



This is a straight-forward conversion case for the new function, keeping
the flow of the existing code as intact as possible.

Signed-off-by: default avatarJason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent c3b18e0d
Loading
Loading
Loading
Loading
+4 −7
Original line number Diff line number Diff line
@@ -321,8 +321,7 @@ static int queue_gso_packets(struct datapath *dp, struct sk_buff *skb,
	}

	/* Queue all of the segments. */
	skb = segs;
	do {
	skb_list_walk_safe(segs, skb, nskb) {
		if (gso_type & SKB_GSO_UDP && skb != segs)
			key = &later_key;

@@ -330,17 +329,15 @@ static int queue_gso_packets(struct datapath *dp, struct sk_buff *skb,
		if (err)
			break;

	} while ((skb = skb->next));
	}

	/* Free all of the segments. */
	skb = segs;
	do {
		nskb = skb->next;
	skb_list_walk_safe(segs, skb, nskb) {
		if (err)
			kfree_skb(skb);
		else
			consume_skb(skb);
	} while ((skb = nskb));
	}
	return err;
}