Lines Matching full:binding
26 struct efx_tc_block_binding *binding; in efx_tc_find_binding() local
29 list_for_each_entry(binding, &efx->tc->block_list, list) in efx_tc_find_binding()
30 if (binding->otherdev == otherdev) in efx_tc_find_binding()
31 return binding; in efx_tc_find_binding()
38 struct efx_tc_block_binding *binding = cb_priv; in efx_tc_block_cb() local
43 return efx_tc_flower(binding->efx, binding->otherdev, in efx_tc_block_cb()
44 tcf, binding->efv); in efx_tc_block_cb()
52 struct efx_tc_block_binding *binding = cb_priv; in efx_tc_block_unbind() local
54 list_del(&binding->list); in efx_tc_block_unbind()
55 kfree(binding); in efx_tc_block_unbind()
62 struct efx_tc_block_binding *binding = kmalloc(sizeof(*binding), GFP_KERNEL); in efx_tc_create_binding() local
64 if (!binding) in efx_tc_create_binding()
66 binding->efx = efx; in efx_tc_create_binding()
67 binding->efv = efv; in efx_tc_create_binding()
68 binding->otherdev = otherdev; in efx_tc_create_binding()
69 binding->block = block; in efx_tc_create_binding()
70 list_add(&binding->list, &efx->tc->block_list); in efx_tc_create_binding()
71 return binding; in efx_tc_create_binding()
77 struct efx_tc_block_binding *binding; in efx_tc_setup_block() local
89 binding = efx_tc_create_binding(efx, efv, net_dev, tcb->block); in efx_tc_setup_block()
90 if (IS_ERR(binding)) in efx_tc_setup_block()
91 return PTR_ERR(binding); in efx_tc_setup_block()
92 block_cb = flow_block_cb_alloc(efx_tc_block_cb, binding, in efx_tc_setup_block()
93 binding, efx_tc_block_unbind); in efx_tc_setup_block()
101 list_del(&binding->list); in efx_tc_setup_block()
102 kfree(binding); in efx_tc_setup_block()
108 binding = efx_tc_find_binding(efx, net_dev); in efx_tc_setup_block()
109 if (binding) { in efx_tc_setup_block()
112 binding); in efx_tc_setup_block()
118 binding->efv ? "semi" : "in", in efx_tc_setup_block()
145 struct efx_tc_block_binding *binding; in efx_tc_indr_setup_cb() local
170 binding = efx_tc_create_binding(efx, NULL, net_dev, tcb->block); in efx_tc_indr_setup_cb()
171 if (IS_ERR(binding)) in efx_tc_indr_setup_cb()
172 return PTR_ERR(binding); in efx_tc_indr_setup_cb()
173 block_cb = flow_indr_block_cb_alloc(efx_tc_block_cb, binding, in efx_tc_indr_setup_cb()
174 binding, efx_tc_block_unbind, in efx_tc_indr_setup_cb()
175 tcb, net_dev, sch, data, binding, in efx_tc_indr_setup_cb()
182 list_del(&binding->list); in efx_tc_indr_setup_cb()
183 kfree(binding); in efx_tc_indr_setup_cb()
189 binding = efx_tc_find_binding(efx, net_dev); in efx_tc_indr_setup_cb()
190 if (!binding) in efx_tc_indr_setup_cb()
194 binding); in efx_tc_indr_setup_cb()