• Home
  • Raw
  • Download

Lines Matching refs:tp

44 	struct tcf_proto *tp;  member
82 static int tcindex_classify(struct sk_buff *skb, const struct tcf_proto *tp, in tcindex_classify() argument
85 struct tcindex_data *p = rcu_dereference_bh(tp->root); in tcindex_classify()
90 skb, tp, res, p); in tcindex_classify()
96 res->classid = TC_H_MAKE(TC_H_MAJ(tp->q->handle), key); in tcindex_classify()
108 static unsigned long tcindex_get(struct tcf_proto *tp, u32 handle) in tcindex_get() argument
110 struct tcindex_data *p = rtnl_dereference(tp->root); in tcindex_get()
113 pr_debug("tcindex_get(tp %p,handle 0x%08x)\n", tp, handle); in tcindex_get()
120 static int tcindex_init(struct tcf_proto *tp) in tcindex_init() argument
124 pr_debug("tcindex_init(tp %p)\n", tp); in tcindex_init()
133 rcu_assign_pointer(tp->root, p); in tcindex_init()
153 static int tcindex_delete(struct tcf_proto *tp, unsigned long arg) in tcindex_delete() argument
155 struct tcindex_data *p = rtnl_dereference(tp->root); in tcindex_delete()
160 pr_debug("tcindex_delete(tp %p,arg 0x%lx),p %p\n", tp, arg, p); in tcindex_delete()
180 tcf_unbind_filter(tp, &r->res); in tcindex_delete()
192 static int tcindex_destroy_element(struct tcf_proto *tp, in tcindex_destroy_element() argument
196 return tcindex_delete(tp, arg); in tcindex_destroy_element()
237 tcindex_set_parms(struct net *net, struct tcf_proto *tp, unsigned long base, in tcindex_set_parms() argument
250 err = tcf_exts_validate(net, tp, tb, est, &e, ovr); in tcindex_set_parms()
268 cp->tp = tp; in tcindex_set_parms()
387 tcf_bind_filter(tp, &cr.res, base); in tcindex_set_parms()
395 tcf_exts_change(tp, &r->exts, &e); in tcindex_set_parms()
397 rcu_assign_pointer(tp->root, cp); in tcindex_set_parms()
404 tcf_exts_change(tp, &f->result.exts, &r->exts); in tcindex_set_parms()
432 struct tcf_proto *tp, unsigned long base, u32 handle, in tcindex_change() argument
437 struct tcindex_data *p = rtnl_dereference(tp->root); in tcindex_change()
443 tp, handle, tca, arg, opt, p, r, arg ? *arg : 0L); in tcindex_change()
452 return tcindex_set_parms(net, tp, base, handle, p, r, tb, in tcindex_change()
456 static void tcindex_walk(struct tcf_proto *tp, struct tcf_walker *walker) in tcindex_walk() argument
458 struct tcindex_data *p = rtnl_dereference(tp->root); in tcindex_walk()
462 pr_debug("tcindex_walk(tp %p,walker %p),p %p\n", tp, walker, p); in tcindex_walk()
468 if (walker->fn(tp, in tcindex_walk()
484 if (walker->fn(tp, (unsigned long) &f->result, in tcindex_walk()
495 static bool tcindex_destroy(struct tcf_proto *tp, bool force) in tcindex_destroy() argument
497 struct tcindex_data *p = rtnl_dereference(tp->root); in tcindex_destroy()
503 pr_debug("tcindex_destroy(tp %p),p %p\n", tp, p); in tcindex_destroy()
507 tcindex_walk(tp, &walker); in tcindex_destroy()
514 static int tcindex_dump(struct net *net, struct tcf_proto *tp, unsigned long fh, in tcindex_dump() argument
517 struct tcindex_data *p = rtnl_dereference(tp->root); in tcindex_dump()
522 tp, fh, skb, t, p, r); in tcindex_dump()