idrinfo            27 include/net/act_api.h 	struct tcf_idrinfo		*idrinfo;
idrinfo           113 include/net/act_api.h 	struct tcf_idrinfo *idrinfo;
idrinfo           123 include/net/act_api.h 	tn->idrinfo = kmalloc(sizeof(*tn->idrinfo), GFP_KERNEL);
idrinfo           124 include/net/act_api.h 	if (!tn->idrinfo)
idrinfo           127 include/net/act_api.h 	tn->idrinfo->net = net;
idrinfo           128 include/net/act_api.h 	mutex_init(&tn->idrinfo->lock);
idrinfo           129 include/net/act_api.h 	idr_init(&tn->idrinfo->action_idr);
idrinfo           134 include/net/act_api.h 			 struct tcf_idrinfo *idrinfo);
idrinfo           145 include/net/act_api.h 		tcf_idrinfo_destroy(tn->ops, tn->idrinfo);
idrinfo           146 include/net/act_api.h 		kfree(tn->idrinfo);
idrinfo           127 net/sched/act_api.c 	struct tcf_idrinfo *idrinfo = p->idrinfo;
idrinfo           129 net/sched/act_api.c 	if (refcount_dec_and_mutex_lock(&p->tcfa_refcnt, &idrinfo->lock)) {
idrinfo           132 net/sched/act_api.c 		idr_remove(&idrinfo->action_idr, p->tcfa_index);
idrinfo           133 net/sched/act_api.c 		mutex_unlock(&idrinfo->lock);
idrinfo           214 net/sched/act_api.c static int tcf_dump_walker(struct tcf_idrinfo *idrinfo, struct sk_buff *skb,
idrinfo           221 net/sched/act_api.c 	struct idr *idr = &idrinfo->action_idr;
idrinfo           226 net/sched/act_api.c 	mutex_lock(&idrinfo->lock);
idrinfo           261 net/sched/act_api.c 	mutex_unlock(&idrinfo->lock);
idrinfo           279 net/sched/act_api.c 		idr_remove(&p->idrinfo->action_idr, p->tcfa_index);
idrinfo           287 net/sched/act_api.c static int tcf_del_walker(struct tcf_idrinfo *idrinfo, struct sk_buff *skb,
idrinfo           293 net/sched/act_api.c 	struct idr *idr = &idrinfo->action_idr;
idrinfo           304 net/sched/act_api.c 	mutex_lock(&idrinfo->lock);
idrinfo           311 net/sched/act_api.c 			mutex_unlock(&idrinfo->lock);
idrinfo           315 net/sched/act_api.c 	mutex_unlock(&idrinfo->lock);
idrinfo           332 net/sched/act_api.c 	struct tcf_idrinfo *idrinfo = tn->idrinfo;
idrinfo           335 net/sched/act_api.c 		return tcf_del_walker(idrinfo, skb, ops);
idrinfo           337 net/sched/act_api.c 		return tcf_dump_walker(idrinfo, skb, cb);
idrinfo           348 net/sched/act_api.c 	struct tcf_idrinfo *idrinfo = tn->idrinfo;
idrinfo           351 net/sched/act_api.c 	mutex_lock(&idrinfo->lock);
idrinfo           352 net/sched/act_api.c 	p = idr_find(&idrinfo->action_idr, index);
idrinfo           357 net/sched/act_api.c 	mutex_unlock(&idrinfo->lock);
idrinfo           367 net/sched/act_api.c static int tcf_idr_delete_index(struct tcf_idrinfo *idrinfo, u32 index)
idrinfo           372 net/sched/act_api.c 	mutex_lock(&idrinfo->lock);
idrinfo           373 net/sched/act_api.c 	p = idr_find(&idrinfo->action_idr, index);
idrinfo           375 net/sched/act_api.c 		mutex_unlock(&idrinfo->lock);
idrinfo           383 net/sched/act_api.c 			WARN_ON(p != idr_remove(&idrinfo->action_idr,
idrinfo           385 net/sched/act_api.c 			mutex_unlock(&idrinfo->lock);
idrinfo           396 net/sched/act_api.c 	mutex_unlock(&idrinfo->lock);
idrinfo           405 net/sched/act_api.c 	struct tcf_idrinfo *idrinfo = tn->idrinfo;
idrinfo           438 net/sched/act_api.c 	p->idrinfo = idrinfo;
idrinfo           456 net/sched/act_api.c 	struct tcf_idrinfo *idrinfo = tn->idrinfo;
idrinfo           458 net/sched/act_api.c 	mutex_lock(&idrinfo->lock);
idrinfo           460 net/sched/act_api.c 	WARN_ON(!IS_ERR(idr_replace(&idrinfo->action_idr, a, a->tcfa_index)));
idrinfo           461 net/sched/act_api.c 	mutex_unlock(&idrinfo->lock);
idrinfo           469 net/sched/act_api.c 	struct tcf_idrinfo *idrinfo = tn->idrinfo;
idrinfo           471 net/sched/act_api.c 	mutex_lock(&idrinfo->lock);
idrinfo           473 net/sched/act_api.c 	WARN_ON(!IS_ERR(idr_remove(&idrinfo->action_idr, index)));
idrinfo           474 net/sched/act_api.c 	mutex_unlock(&idrinfo->lock);
idrinfo           487 net/sched/act_api.c 	struct tcf_idrinfo *idrinfo = tn->idrinfo;
idrinfo           492 net/sched/act_api.c 	mutex_lock(&idrinfo->lock);
idrinfo           494 net/sched/act_api.c 		p = idr_find(&idrinfo->action_idr, *index);
idrinfo           499 net/sched/act_api.c 			mutex_unlock(&idrinfo->lock);
idrinfo           511 net/sched/act_api.c 			ret = idr_alloc_u32(&idrinfo->action_idr, NULL, index,
idrinfo           514 net/sched/act_api.c 				idr_replace(&idrinfo->action_idr,
idrinfo           520 net/sched/act_api.c 		ret = idr_alloc_u32(&idrinfo->action_idr, NULL, index,
idrinfo           523 net/sched/act_api.c 			idr_replace(&idrinfo->action_idr, ERR_PTR(-EBUSY),
idrinfo           526 net/sched/act_api.c 	mutex_unlock(&idrinfo->lock);
idrinfo           532 net/sched/act_api.c 			 struct tcf_idrinfo *idrinfo)
idrinfo           534 net/sched/act_api.c 	struct idr *idr = &idrinfo->action_idr;
idrinfo           547 net/sched/act_api.c 	idr_destroy(&idrinfo->action_idr);
idrinfo          1224 net/sched/act_api.c 		struct tcf_idrinfo *idrinfo = a->idrinfo;
idrinfo          1235 net/sched/act_api.c 			ret = tcf_idr_delete_index(idrinfo, act_index);
idrinfo            82 net/sched/act_ipt.c 		ipt_destroy_target(ipt->tcfi_t, a->idrinfo->net);