From 1432dd9a2e5a2685ee0a82294c56e49b113c75e0 Mon Sep 17 00:00:00 2001 From: Patrick McHardy Date: Wed, 5 Dec 2007 01:23:17 -0800 Subject: [PATCH] --- yaml --- r: 78302 b: refs/heads/master c: 8b1cf0db2aced837fcd50072e81e32c5836a1ee1 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/netfilter/nf_queue.c | 31 ++++++++++++++++++++----------- 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/[refs] b/[refs] index f9baf2fe3d64..37937b81ef0e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1999414a4ece2b8cea3fb3c4dc8fe06796256269 +refs/heads/master: 8b1cf0db2aced837fcd50072e81e32c5836a1ee1 diff --git a/trunk/net/netfilter/nf_queue.c b/trunk/net/netfilter/nf_queue.c index 0cef1433d660..81d010a05b98 100644 --- a/trunk/net/netfilter/nf_queue.c +++ b/trunk/net/netfilter/nf_queue.c @@ -138,15 +138,18 @@ static int __nf_queue(struct sk_buff *skb, } /* Bump dev refs so they don't vanish while packet is out */ - if (indev) dev_hold(indev); - if (outdev) dev_hold(outdev); - + if (indev) + dev_hold(indev); + if (outdev) + dev_hold(outdev); #ifdef CONFIG_BRIDGE_NETFILTER if (skb->nf_bridge) { physindev = skb->nf_bridge->physindev; - if (physindev) dev_hold(physindev); + if (physindev) + dev_hold(physindev); physoutdev = skb->nf_bridge->physoutdev; - if (physoutdev) dev_hold(physoutdev); + if (physoutdev) + dev_hold(physoutdev); } #endif afinfo->saveroute(skb, info); @@ -156,11 +159,15 @@ static int __nf_queue(struct sk_buff *skb, if (status < 0) { /* James M doesn't say fuck enough. */ - if (indev) dev_put(indev); - if (outdev) dev_put(outdev); + if (indev) + dev_put(indev); + if (outdev) + dev_put(outdev); #ifdef CONFIG_BRIDGE_NETFILTER - if (physindev) dev_put(physindev); - if (physoutdev) dev_put(physoutdev); + if (physindev) + dev_put(physindev); + if (physoutdev) + dev_put(physoutdev); #endif module_put(info->elem->owner); kfree(info); @@ -222,8 +229,10 @@ void nf_reinject(struct sk_buff *skb, struct nf_info *info, rcu_read_lock(); /* 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 (info->indev) + dev_put(info->indev); + if (info->outdev) + dev_put(info->outdev); #ifdef CONFIG_BRIDGE_NETFILTER if (skb->nf_bridge) { if (skb->nf_bridge->physindev)