Hi Feng,

2017-05-05 8:55 GMT+08:00  <gfree.w...@vip.163.com>:
[...]
> +static void
> +nf_ct_flush_expect(const struct module *me)
> +{
> +       struct nf_conntrack_expect *exp;
> +       const struct hlist_node *next;
> +       u32 i;
> +
> +       if (!me)
> +               return;
> +
> +       /* Get rid of expectations */
> +       spin_lock_bh(&nf_conntrack_expect_lock);
> +       for (i = 0; i < nf_ct_expect_hsize; i++) {
> +               hlist_for_each_entry_safe(exp, next,
> +                                         &nf_ct_expect_hash[i], hnode) {
> +                       struct nf_conn_help *master_help = 
> nfct_help(exp->master);
> +
> +                       if ((master_help->helper && master_help->helper->me 
> == me) ||
> +                           (exp->helper && exp->helper->me == me) ||
> +                           (exp->nat_helper && exp->nat_helper->me == me)) {
> +                               /* This expect belongs to the dying module */
> +                               if (del_timer(&exp->timeout)) {
> +                                       nf_ct_unlink_expect(exp);
> +                                       nf_ct_expect_put(exp);
> +                               }

Is this should be replaced with your helper function nf_ct_remove_expect()?

> +                       }
> +               }
> +       }
> +       spin_unlock_bh(&nf_conntrack_expect_lock);
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to