|
@@ -510,9 +510,12 @@ static bool e1000_clean_rx_irq(struct e1000_adapter *adapter,
|
|
|
netdev_alloc_skb(netdev, length + NET_IP_ALIGN);
|
|
|
if (new_skb) {
|
|
|
skb_reserve(new_skb, NET_IP_ALIGN);
|
|
|
- memcpy(new_skb->data - NET_IP_ALIGN,
|
|
|
- skb->data - NET_IP_ALIGN,
|
|
|
- length + NET_IP_ALIGN);
|
|
|
+ skb_copy_to_linear_data_offset(new_skb,
|
|
|
+ -NET_IP_ALIGN,
|
|
|
+ (skb->data -
|
|
|
+ NET_IP_ALIGN),
|
|
|
+ (length +
|
|
|
+ NET_IP_ALIGN));
|
|
|
/* save the skb in buffer_info as good */
|
|
|
buffer_info->skb = skb;
|
|
|
skb = new_skb;
|