Skip to contentSkip to conversation

: forgotten dev_put for bridge-devices in nf_reinject

PATCH New Patrick McHardy 1 participant 1 message Dec 10, 2002

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 : forgotten dev_put for bridge-devices in nf_reinject

Hi.

The attached patch releases the bridge devices grabbed in nf_queue after reinjecting the packet. Seems someone forgot these (or planned to get Rusty killed) ;)

Bye,
Patrick

net/core/netfilter.c renamed from net/core/netfilter.c.orig +9 -1
@@ -574,7 +574,15 @@
 	/* Release those devices we held, or Alexey will kill me. */
 	if (info->indev) dev_put(info->indev);
 	if (info->outdev) dev_put(info->outdev);
-	
+#if defined(CONFIG_BRIDGE) || defined(CONFIG_BRIDGE_MODULE)
+	if (skb->nf_bridge) {
+		if (skb->nf_bridge->physindev)
+			dev_put(skb->nf_bridge->physindev);
+		if (skb->nf_bridge->physoutdev)
+			dev_put(skb->nf_bridge->physoutdev);
+	}
+#endif
+
 	kfree(info);
 	return;
 }