diff options
Diffstat (limited to 'net/sched/act_skbedit.c')
-rw-r--r-- | net/sched/act_skbedit.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/net/sched/act_skbedit.c b/net/sched/act_skbedit.c index aa0a4c056f31..0fa1aad6e204 100644 --- a/net/sched/act_skbedit.c +++ b/net/sched/act_skbedit.c | |||
@@ -112,10 +112,11 @@ static int tcf_skbedit_init(struct net *net, struct nlattr *nla, | |||
112 | ret = ACT_P_CREATED; | 112 | ret = ACT_P_CREATED; |
113 | } else { | 113 | } else { |
114 | d = to_skbedit(pc); | 114 | d = to_skbedit(pc); |
115 | if (!ovr) { | 115 | if (bind) |
116 | tcf_hash_release(pc, bind, &skbedit_hash_info); | 116 | return 0; |
117 | tcf_hash_release(pc, bind, &skbedit_hash_info); | ||
118 | if (!ovr) | ||
117 | return -EEXIST; | 119 | return -EEXIST; |
118 | } | ||
119 | } | 120 | } |
120 | 121 | ||
121 | spin_lock_bh(&d->tcf_lock); | 122 | spin_lock_bh(&d->tcf_lock); |