diff mbox

net: sched: act_connmark: don't zap skb->nfct

Message ID 1430220801-21798-1-git-send-email-fw@strlen.de
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Florian Westphal April 28, 2015, 11:33 a.m. UTC
This action is meant to be passive, i.e. we should not alter
skb->nfct: If nfct is present just leave it alone.

Compile tested only.

Cc: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: Florian Westphal <fw@strlen.de>
---
shouldn't matter much in practice since this would be used in the
ingress path where skb->nfct is NULL in non-lo case.

Comments

Pablo Neira Ayuso April 28, 2015, 12:03 p.m. UTC | #1
On Tue, Apr 28, 2015 at 01:33:21PM +0200, Florian Westphal wrote:
> This action is meant to be passive, i.e. we should not alter
> skb->nfct: If nfct is present just leave it alone.
> 
> Compile tested only.
> 
> Cc: Jamal Hadi Salim <jhs@mojatatu.com>
> Signed-off-by: Florian Westphal <fw@strlen.de>

Acked-by: Pablo Neira Ayuso <pablo@netfilter.org>
--
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
David Miller April 29, 2015, 6:57 p.m. UTC | #2
From: Florian Westphal <fw@strlen.de>
Date: Tue, 28 Apr 2015 13:33:21 +0200

> This action is meant to be passive, i.e. we should not alter
> skb->nfct: If nfct is present just leave it alone.
> 
> Compile tested only.
> 
> Cc: Jamal Hadi Salim <jhs@mojatatu.com>
> Signed-off-by: Florian Westphal <fw@strlen.de>

Applied.
--
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
diff mbox

Patch

diff --git a/net/sched/act_connmark.c b/net/sched/act_connmark.c
index 8e47251..295d14b 100644
--- a/net/sched/act_connmark.c
+++ b/net/sched/act_connmark.c
@@ -63,7 +63,6 @@  static int tcf_connmark(struct sk_buff *skb, const struct tc_action *a,
 		skb->mark = c->mark;
 		/* using overlimits stats to count how many packets marked */
 		ca->tcf_qstats.overlimits++;
-		nf_ct_put(c);
 		goto out;
 	}
 
@@ -82,7 +81,6 @@  static int tcf_connmark(struct sk_buff *skb, const struct tc_action *a,
 	nf_ct_put(c);
 
 out:
-	skb->nfct = NULL;
 	spin_unlock(&ca->tcf_lock);
 	return ca->tcf_action;
 }