diff options
| author | Mathias Krause <mathias.krause@secunet.com> | 2013-11-07 14:18:25 +0100 | 
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2013-11-07 19:28:59 -0500 | 
| commit | 253c6daa343104c1278facd11cb5ecfc7554fb38 (patch) | |
| tree | 97e4ff68f7c9e196f1cfbd16070f19f8f46fe4e0 /net | |
| parent | 0c7ddf36c29c3ce12f2d2931a357ccaa0861035a (diff) | |
caif: use pskb_put() instead of reimplementing its functionality
Also remove the warning for fragmented packets -- skb_cow_data() will
linearize the buffer, removing all fragments.
Signed-off-by: Mathias Krause <mathias.krause@secunet.com>
Cc: Dmitry Tarnyagin <dmitry.tarnyagin@lockless.no>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
| -rw-r--r-- | net/caif/cfpkt_skbuff.c | 12 | 
1 files changed, 1 insertions, 11 deletions
| diff --git a/net/caif/cfpkt_skbuff.c b/net/caif/cfpkt_skbuff.c index 6493351f39c6..1be0b521ac49 100644 --- a/net/caif/cfpkt_skbuff.c +++ b/net/caif/cfpkt_skbuff.c @@ -203,20 +203,10 @@ int cfpkt_add_body(struct cfpkt *pkt, const void *data, u16 len)  			PKT_ERROR(pkt, "cow failed\n");  			return -EPROTO;  		} -		/* -		 * Is the SKB non-linear after skb_cow_data()? If so, we are -		 * going to add data to the last SKB, so we need to adjust -		 * lengths of the top SKB. -		 */ -		if (lastskb != skb) { -			pr_warn("Packet is non-linear\n"); -			skb->len += len; -			skb->data_len += len; -		}  	}  	/* All set to put the last SKB and optionally write data there. */ -	to = skb_put(lastskb, len); +	to = pskb_put(skb, lastskb, len);  	if (likely(data))  		memcpy(to, data, len);  	return 0; | 
