[PATCH] ufs: wrong type cast
[linux-2.6.git] / net / 8021q / vlan_dev.c
index b7486488967074b9b40c4b5916533f0b969f265c..da9cfe92715815d5c754eb268c2fd8f84e1467a8 100644 (file)
@@ -163,7 +163,8 @@ int vlan_skb_recv(struct sk_buff *skb, struct net_device *dev,
        stats->rx_packets++;
        stats->rx_bytes += skb->len;
 
-       skb_pull(skb, VLAN_HLEN); /* take off the VLAN header (4 bytes currently) */
+       /* Take off the VLAN header (4 bytes currently) */
+       skb_pull_rcsum(skb, VLAN_HLEN);
 
        /* Ok, lets check to make sure the device (dev) we
         * came in on is what this VLAN is attached to.
@@ -211,7 +212,7 @@ int vlan_skb_recv(struct sk_buff *skb, struct net_device *dev,
                 * This allows the VLAN to have a different MAC than the underlying
                 * device, and still route correctly.
                 */
-               if (memcmp(eth_hdr(skb)->h_dest, skb->dev->dev_addr, ETH_ALEN) == 0) {
+               if (!compare_ether_addr(eth_hdr(skb)->h_dest, skb->dev->dev_addr)) {
                        /* It is for our (changed) MAC-address! */
                        skb->pkt_type = PACKET_HOST;
                }