On Tue, Aug 8, 2017 at 9:00 AM, Cong Wang <xiyou.wangc...@gmail.com> wrote:
> On Sat, Aug 5, 2017 at 1:48 AM, Xin Long <lucien....@gmail.com> wrote:
>> -static int __tcf_ipt_init(struct tc_action_net *tn, struct nlattr *nla,
>> +static int __tcf_ipt_init(struct net *net, struct nlattr *nla,
>>                           struct nlattr *est, struct tc_action **a,
>>                           const struct tc_action_ops *ops, int ovr, int bind)
>>  {
>> +       struct tc_action_net *tn = net_generic(net, xt_net_id);
>
> ...
>
>> @@ -193,18 +195,14 @@ static int tcf_ipt_init(struct net *net, struct nlattr 
>> *nla,
>>                         struct nlattr *est, struct tc_action **a, int ovr,
>>                         int bind)
>>  {
>> -       struct tc_action_net *tn = net_generic(net, ipt_net_id);
>> -
>> -       return __tcf_ipt_init(tn, nla, est, a, &act_ipt_ops, ovr, bind);
>> +       return __tcf_ipt_init(net, nla, est, a, &act_ipt_ops, ovr, bind);
>>  }
>>
>>  static int tcf_xt_init(struct net *net, struct nlattr *nla,
>>                        struct nlattr *est, struct tc_action **a, int ovr,
>>                        int bind)
>>  {
>> -       struct tc_action_net *tn = net_generic(net, xt_net_id);
>> -
>> -       return __tcf_ipt_init(tn, nla, est, a, &act_xt_ops, ovr, bind);
>> +       return __tcf_ipt_init(net, nla, est, a, &act_xt_ops, ovr, bind);
>
> This is not correct.
>
> You miss ipt_net_id != xt_net_id.
right, that's a silly mistake. seems no better way but to pass both
net and net_id to __tcf_ipt_init. will send v2. thanks.

Reply via email to