diff options
Diffstat (limited to 'net/sctp/socket.c')
-rw-r--r-- | net/sctp/socket.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/sctp/socket.c b/net/sctp/socket.c index 7c3dfd2d9489..0f01e5d8a24f 100644 --- a/net/sctp/socket.c +++ b/net/sctp/socket.c | |||
@@ -1881,7 +1881,7 @@ static int sctp_skb_pull(struct sk_buff *skb, int len) | |||
1881 | len -= skb_len; | 1881 | len -= skb_len; |
1882 | __skb_pull(skb, skb_len); | 1882 | __skb_pull(skb, skb_len); |
1883 | 1883 | ||
1884 | for (list = skb_shinfo(skb)->frag_list; list; list = list->next) { | 1884 | skb_walk_frags(skb, list) { |
1885 | rlen = sctp_skb_pull(list, len); | 1885 | rlen = sctp_skb_pull(list, len); |
1886 | skb->len -= (len-rlen); | 1886 | skb->len -= (len-rlen); |
1887 | skb->data_len -= (len-rlen); | 1887 | skb->data_len -= (len-rlen); |
@@ -6660,7 +6660,7 @@ static void sctp_sock_rfree_frag(struct sk_buff *skb) | |||
6660 | goto done; | 6660 | goto done; |
6661 | 6661 | ||
6662 | /* Don't forget the fragments. */ | 6662 | /* Don't forget the fragments. */ |
6663 | for (frag = skb_shinfo(skb)->frag_list; frag; frag = frag->next) | 6663 | skb_walk_frags(skb, frag) |
6664 | sctp_sock_rfree_frag(frag); | 6664 | sctp_sock_rfree_frag(frag); |
6665 | 6665 | ||
6666 | done: | 6666 | done: |
@@ -6675,7 +6675,7 @@ static void sctp_skb_set_owner_r_frag(struct sk_buff *skb, struct sock *sk) | |||
6675 | goto done; | 6675 | goto done; |
6676 | 6676 | ||
6677 | /* Don't forget the fragments. */ | 6677 | /* Don't forget the fragments. */ |
6678 | for (frag = skb_shinfo(skb)->frag_list; frag; frag = frag->next) | 6678 | skb_walk_frags(skb, frag) |
6679 | sctp_skb_set_owner_r_frag(frag, sk); | 6679 | sctp_skb_set_owner_r_frag(frag, sk); |
6680 | 6680 | ||
6681 | done: | 6681 | done: |