From: Michael S. Tsirkin Date: Thu, 27 Jul 2006 09:03:43 +0000 (+0300) Subject: IB/sdp: Thinko fix: must update nr frags. X-Git-Tag: v4.1.12-92~264^2~5^2~397 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=23cc05041a21312ad610838dbb57e57475dff074;p=users%2Fjedix%2Flinux-maple.git IB/sdp: Thinko fix: must update nr frags. --- diff --git a/drivers/infiniband/ulp/sdp/sdp_bcopy.c b/drivers/infiniband/ulp/sdp/sdp_bcopy.c index 9e25c2c2e751b..ec35ec1b7c53f 100644 --- a/drivers/infiniband/ulp/sdp/sdp_bcopy.c +++ b/drivers/infiniband/ulp/sdp/sdp_bcopy.c @@ -397,8 +397,9 @@ static void sdp_handle_wc(struct sdp_sock *ssk, struct ib_wc *wc) skb->truesize = sizeof(struct sdp_bsdh) + PAGE_ALIGN(skb->data_len); + skb_shinfo(skb)->nr_frags = PFN_ALIGN(skb->data_len); - for (i = PFN_ALIGN(skb->data_len) + 1; + for (i = skb_shinfo(skb)->nr_frags; i < SDP_MAX_SEND_SKB_FRAGS; ++i) __free_page(skb_shinfo(skb)->frags[i].page);