Commit 27d7ff46 authored by Arnaldo Carvalho de Melo's avatar Arnaldo Carvalho de Melo Committed by David S. Miller
Browse files

[SK_BUFF]: Introduce skb_copy_to_linear_data{_offset}



To clearly state the intent of copying to linear sk_buffs, _offset being a
overly long variant but interesting for the sake of saving some bytes.

Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@ghostprotocols.net>
parent 3dbad80a
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -473,7 +473,7 @@ simeth_rx(struct net_device *dev)
		 * XXX Fix me
		 * Should really do a csum+copy here
		 */
		memcpy(skb->data, frame, len);
		skb_copy_to_linear_data(skb, frame, len);
#endif
		skb->protocol = eth_type_trans(skb, dev);

+1 −1
Original line number Diff line number Diff line
@@ -233,7 +233,7 @@ xpnet_receive(partid_t partid, int channel, struct xpnet_message *msg)
			"%lu)\n", skb->data, &msg->data,
			(size_t) msg->embedded_bytes);

		memcpy(skb->data, &msg->data, (size_t) msg->embedded_bytes);
		skb_copy_to_linear_data(skb, &msg->data, (size_t)msg->embedded_bytes);
	} else {
		dev_dbg(xpnet, "transferring buffer to the skb->data area;\n\t"
			"bte_copy(0x%p, 0x%p, %hu)\n", (void *)msg->buf_pa,
+2 −1
Original line number Diff line number Diff line
@@ -399,7 +399,8 @@ static u16 hycapi_send_message(struct capi_ctr *ctrl, struct sk_buff *skb)
			if (_len > 22) {
				_len2 = _len - 22;
				skb_copy_from_linear_data(skb, msghead, 22);
				memcpy(skb->data + _len2, msghead, 22);
				skb_copy_to_linear_data_offset(skb, _len2,
							       msghead, 22);
				skb_pull(skb, _len2);
				CAPIMSG_SETLEN(skb->data, 22);
				retval = capilib_data_b3_req(&cinfo->ncci_head,
+3 −3
Original line number Diff line number Diff line
@@ -1904,10 +1904,10 @@ static __inline__ void wrap_copy(struct sk_buff *skb, const unsigned char *ring,
	u32 left = RX_BUF_LEN - offset;

	if (size > left) {
		memcpy(skb->data, ring + offset, left);
		memcpy(skb->data+left, ring, size - left);
		skb_copy_to_linear_data(skb, ring + offset, left);
		skb_copy_to_linear_data_offset(skb, left, ring, size - left);
	} else
		memcpy(skb->data, ring + offset, size);
		skb_copy_to_linear_data(skb, ring + offset, size);
}
#endif

+1 −1
Original line number Diff line number Diff line
@@ -774,7 +774,7 @@ static int sendup_buffer (struct net_device *dev)
	skb_pull(skb,3);

	/* copy ddp(s,e)hdr + contents */
	memcpy(skb->data,(void*)ltdmabuf,len);
	skb_copy_to_linear_data(skb, ltdmabuf, len);

	skb_reset_transport_header(skb);

Loading