]> Pileus Git - ~andy/linux/blobdiff - net/bridge/br_input.c
Merge branch 'next' of git://git.monstr.eu/linux-2.6-microblaze
[~andy/linux] / net / bridge / br_input.c
index 826cd5221536cadd3b0d13dfec2e9d3639b92a93..25207a1f182be33d9b588a3d5fdbc1273c269409 100644 (file)
@@ -141,7 +141,7 @@ struct sk_buff *br_handle_frame(struct sk_buff *skb)
        const unsigned char *dest = eth_hdr(skb)->h_dest;
        int (*rhook)(struct sk_buff *skb);
 
-       if (skb->pkt_type == PACKET_LOOPBACK)
+       if (unlikely(skb->pkt_type == PACKET_LOOPBACK))
                return skb;
 
        if (!is_valid_ether_addr(eth_hdr(skb)->h_source))
@@ -159,7 +159,7 @@ struct sk_buff *br_handle_frame(struct sk_buff *skb)
                        goto drop;
 
                /* If STP is turned off, then forward */
-               if (p->br->stp_enabled == BR_NO_STP && dest[5] == 0)
+               if (p->br->stp_enabled == BR_NO_STP)
                        goto forward;
 
                if (NF_HOOK(NFPROTO_BRIDGE, NF_BR_LOCAL_IN, skb, skb->dev,