diff --git a/net/sched/act_skbmod.c b/net/sched/act_skbmod.c index fa975262dbacf19013a3d3b0390c3a49837bfa15..d09565d6433e28db78c4a3c51c90c1a73a54900c 100644 --- a/net/sched/act_skbmod.c +++ b/net/sched/act_skbmod.c @@ -190,7 +190,8 @@ static void tcf_skbmod_cleanup(struct tc_action *a) struct tcf_skbmod_params *p; p = rcu_dereference_protected(d->skbmod_p, 1); - kfree_rcu(p, rcu); + if (p) + kfree_rcu(p, rcu); } static int tcf_skbmod_dump(struct sk_buff *skb, struct tc_action *a,