=====================================================================
@@ -382,6 +382,9 @@ struct sk_buff {
__u8 do_not_encrypt:1;
__u8 requeue:1;
#endif
+#if defined(CONFIG_BRIDGE) || defined(CONFIG_BRIDGE_MODULE)
+ __u8 br_seen:1;
+#endif
/* 0/13/14 bit hole */
#ifdef CONFIG_NET_DMA
=====================================================================
@@ -549,6 +549,9 @@ static void __copy_skb_header(struct sk_
new->tc_verd = old->tc_verd;
#endif
#endif
+#if defined(CONFIG_BRIDGE) || defined(CONFIG_BRIDGE_MODULE)
+ new->br_seen = old->br_seen;
+#endif
new->vlan_tci = old->vlan_tci;
skb_copy_secmark(new, old);
To distinguish skb's that was issued by a bridge (to not loop forever) special skb mark is needed - br_seen. Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org> --- include/linux/skbuff.h | 3 +++ net/core/skbuff.c | 3 +++ 2 files changed, 6 insertions(+) -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html