Message ID | 1457012054-18012-1-git-send-email-psutter@redhat.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
On 16-03-03 08:34 AM, Phil Sutter wrote: > From: Phil Sutter <phil@nwl.cc> > > Before calling the destroy() or target() callbacks, the family parameter > field has to be initialized. Otherwise at least the LOG target will > refuse to work and upon removal oops the kernel. > > Cc: Jamal Hadi Salim <jhs@mojatatu.com> > Signed-off-by: Phil Sutter <phil@nwl.cc> Caveat: ipt has not been receiving a lot of love. Thanks for showing it some love. If indeed you have tested this with the LOG target, then: Acked-by: Jamal Hadi Salim <jhs@mojatatu.com> cheers, jamal
From: Phil Sutter <psutter@redhat.com> Date: Thu, 3 Mar 2016 14:34:14 +0100 > From: Phil Sutter <phil@nwl.cc> > > Before calling the destroy() or target() callbacks, the family parameter > field has to be initialized. Otherwise at least the LOG target will > refuse to work and upon removal oops the kernel. > > Cc: Jamal Hadi Salim <jhs@mojatatu.com> > Signed-off-by: Phil Sutter <phil@nwl.cc> Applied.
diff --git a/net/sched/act_ipt.c b/net/sched/act_ipt.c index 89c41a1f35894..350e134cffb32 100644 --- a/net/sched/act_ipt.c +++ b/net/sched/act_ipt.c @@ -66,6 +66,7 @@ static void ipt_destroy_target(struct xt_entry_target *t) struct xt_tgdtor_param par = { .target = t->u.kernel.target, .targinfo = t->data, + .family = NFPROTO_IPV4, }; if (par.target->destroy != NULL) par.target->destroy(&par); @@ -219,6 +220,7 @@ static int tcf_ipt(struct sk_buff *skb, const struct tc_action *a, par.hooknum = ipt->tcfi_hook; par.target = ipt->tcfi_t->u.kernel.target; par.targinfo = ipt->tcfi_t->data; + par.family = NFPROTO_IPV4; ret = par.target->target(skb, &par); switch (ret) {