Use skb_copy_bits() to copy data that might not be pulled into headers.
authorBen Pfaff <blp@nicira.com>
Wed, 12 Nov 2008 00:18:32 +0000 (16:18 -0800)
committerBen Pfaff <blp@nicira.com>
Thu, 13 Nov 2008 20:44:04 +0000 (12:44 -0800)
datapath/datapath.c

index d4f332ee981511fb595d3ef6e623078987827ad6..07fa92d0740883f996119a476b49cbf66bf75793 100644 (file)
@@ -690,7 +690,7 @@ dp_output_control(struct datapath *dp, struct sk_buff *skb,
                                    : OFPP_LOCAL);
        opi->reason         = reason;
        opi->pad            = 0;
-       memcpy(opi->data, skb_mac_header(skb), fwd_len);
+       skb_copy_bits(skb, 0, opi->data, fwd_len);
        err = send_openflow_skb(f_skb, NULL);
 
 out: