Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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: Jason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Jason A. Donenfeld and committed by
David S. Miller
2cec4448 c3b18e0d

+4 -7
+4 -7
net/openvswitch/datapath.c
··· 321 321 } 322 322 323 323 /* Queue all of the segments. */ 324 - skb = segs; 325 - do { 324 + skb_list_walk_safe(segs, skb, nskb) { 326 325 if (gso_type & SKB_GSO_UDP && skb != segs) 327 326 key = &later_key; 328 327 ··· 329 330 if (err) 330 331 break; 331 332 332 - } while ((skb = skb->next)); 333 + } 333 334 334 335 /* Free all of the segments. */ 335 - skb = segs; 336 - do { 337 - nskb = skb->next; 336 + skb_list_walk_safe(segs, skb, nskb) { 338 337 if (err) 339 338 kfree_skb(skb); 340 339 else 341 340 consume_skb(skb); 342 - } while ((skb = nskb)); 341 + } 343 342 return err; 344 343 } 345 344