Lines Matching refs:rtnl_held
249 tcf_proto_lookup_ops(const char *kind, bool rtnl_held, in tcf_proto_lookup_ops() argument
258 if (rtnl_held) in tcf_proto_lookup_ops()
261 if (rtnl_held) in tcf_proto_lookup_ops()
374 bool rtnl_held, in tcf_proto_create() argument
384 tp->ops = tcf_proto_lookup_ops(kind, rtnl_held, extack); in tcf_proto_create()
415 static void tcf_proto_destroy(struct tcf_proto *tp, bool rtnl_held, in tcf_proto_destroy() argument
418 tp->ops->destroy(tp, rtnl_held, extack); in tcf_proto_destroy()
426 static void tcf_proto_put(struct tcf_proto *tp, bool rtnl_held, in tcf_proto_put() argument
430 tcf_proto_destroy(tp, rtnl_held, true, extack); in tcf_proto_put()
720 static void tcf_chain_flush(struct tcf_chain *chain, bool rtnl_held) in tcf_chain_flush() argument
739 tcf_proto_put(tp, rtnl_held, NULL); in tcf_chain_flush()
1130 static void tcf_block_flush_all_chains(struct tcf_block *block, bool rtnl_held) in tcf_block_flush_all_chains() argument
1141 tcf_chain_flush(chain, rtnl_held); in tcf_block_flush_all_chains()
1150 u32 *parent, int ifindex, bool rtnl_held, in __tcf_qdisc_find() argument
1215 if (rtnl_held) in __tcf_qdisc_find()
1282 struct tcf_block_ext_info *ei, bool rtnl_held) in __tcf_block_put() argument
1303 tcf_block_flush_all_chains(block, rtnl_held); in __tcf_block_put()
1309 static void tcf_block_refcnt_put(struct tcf_block *block, bool rtnl_held) in tcf_block_refcnt_put() argument
1311 __tcf_block_put(block, NULL, NULL, rtnl_held); in tcf_block_refcnt_put()
1353 bool rtnl_held) in tcf_block_release() argument
1356 tcf_block_refcnt_put(block, rtnl_held); in tcf_block_release()
1359 if (rtnl_held) in tcf_block_release()
1859 bool rtnl_held) in tcf_chain_tp_insert_unique() argument
1869 tcf_proto_destroy(tp_new, rtnl_held, false, NULL); in tcf_chain_tp_insert_unique()
1880 tcf_proto_destroy(tp_new, rtnl_held, false, NULL); in tcf_chain_tp_insert_unique()
1883 tcf_proto_destroy(tp_new, rtnl_held, false, NULL); in tcf_chain_tp_insert_unique()
1891 struct tcf_proto *tp, bool rtnl_held, in tcf_chain_tp_delete_empty() argument
1928 tcf_proto_put(tp, rtnl_held, extack); in tcf_chain_tp_delete_empty()
1968 bool terse_dump, bool rtnl_held, in tcf_fill_node() argument
1999 rtnl_held) < 0) in tcf_fill_node()
2006 tp->ops->dump(net, tp, fh, skb, tcm, rtnl_held) < 0) in tcf_fill_node()
2029 bool rtnl_held, struct netlink_ext_ack *extack) in tfilter_notify() argument
2041 false, rtnl_held, extack) <= 0) { in tfilter_notify()
2058 bool rtnl_held, struct netlink_ext_ack *extack) in tfilter_del_notify() argument
2070 false, rtnl_held, extack) <= 0) { in tfilter_del_notify()
2076 err = tp->ops->delete(tp, fh, last, rtnl_held, extack); in tfilter_del_notify()
2139 bool rtnl_held = false; in tc_new_tfilter() local
2191 if (rtnl_held || in tc_new_tfilter()
2194 rtnl_held = true; in tc_new_tfilter()
2260 rtnl_held, extack); in tc_new_tfilter()
2268 rtnl_held); in tc_new_tfilter()
2307 if (!rtnl_held) in tc_new_tfilter()
2315 RTM_NEWTFILTER, false, rtnl_held, extack); in tc_new_tfilter()
2324 tcf_chain_tp_delete_empty(chain, tp, rtnl_held, NULL); in tc_new_tfilter()
2328 tcf_proto_put(tp, rtnl_held, NULL); in tc_new_tfilter()
2332 tcf_block_release(q, block, rtnl_held); in tc_new_tfilter()
2334 if (rtnl_held) in tc_new_tfilter()
2341 rtnl_held = true; in tc_new_tfilter()
2371 bool rtnl_held = false; in tc_del_tfilter() local
2406 rtnl_held = true; in tc_del_tfilter()
2444 tcf_chain_flush(chain, rtnl_held); in tc_del_tfilter()
2465 tcf_proto_put(tp, rtnl_held, NULL); in tc_del_tfilter()
2467 RTM_DELTFILTER, false, rtnl_held, extack); in tc_del_tfilter()
2483 rtnl_held, extack); in tc_del_tfilter()
2488 tcf_chain_tp_delete_empty(chain, tp, rtnl_held, extack); in tc_del_tfilter()
2494 tcf_proto_put(tp, rtnl_held, NULL); in tc_del_tfilter()
2497 tcf_block_release(q, block, rtnl_held); in tc_del_tfilter()
2499 if (rtnl_held) in tc_del_tfilter()
2528 bool rtnl_held = false; in tc_get_tfilter() local
2562 rtnl_held = true; in tc_get_tfilter()
2611 fh, RTM_NEWTFILTER, true, rtnl_held, NULL); in tc_get_tfilter()
2620 tcf_proto_put(tp, rtnl_held, NULL); in tc_get_tfilter()
2623 tcf_block_release(q, block, rtnl_held); in tc_get_tfilter()
2625 if (rtnl_held) in tc_get_tfilter()
3493 void *type_data, bool err_stop, bool rtnl_held) in tc_setup_cb_call() argument
3495 bool take_rtnl = READ_ONCE(block->lockeddevcnt) && !rtnl_held; in tc_setup_cb_call()
3506 if (!rtnl_held && !take_rtnl && block->lockeddevcnt) { in tc_setup_cb_call()
3529 u32 *flags, unsigned int *in_hw_count, bool rtnl_held) in tc_setup_cb_add() argument
3531 bool take_rtnl = READ_ONCE(block->lockeddevcnt) && !rtnl_held; in tc_setup_cb_add()
3542 if (!rtnl_held && !take_rtnl && block->lockeddevcnt) { in tc_setup_cb_add()
3581 bool rtnl_held) in tc_setup_cb_replace() argument
3583 bool take_rtnl = READ_ONCE(block->lockeddevcnt) && !rtnl_held; in tc_setup_cb_replace()
3594 if (!rtnl_held && !take_rtnl && block->lockeddevcnt) { in tc_setup_cb_replace()
3633 u32 *flags, unsigned int *in_hw_count, bool rtnl_held) in tc_setup_cb_destroy() argument
3635 bool take_rtnl = READ_ONCE(block->lockeddevcnt) && !rtnl_held; in tc_setup_cb_destroy()
3646 if (!rtnl_held && !take_rtnl && block->lockeddevcnt) { in tc_setup_cb_destroy()