Lines Matching refs:block_cb
179 struct flow_block_cb *block_cb; in prestera_flow_block_get() local
181 block_cb = flow_block_cb_lookup(f->block, in prestera_flow_block_get()
183 if (!block_cb) { in prestera_flow_block_get()
188 block_cb = flow_block_cb_alloc(prestera_flow_block_cb, in prestera_flow_block_get()
191 if (IS_ERR(block_cb)) { in prestera_flow_block_get()
193 return ERR_CAST(block_cb); in prestera_flow_block_get()
196 block->block_cb = block_cb; in prestera_flow_block_get()
199 block = flow_block_cb_priv(block_cb); in prestera_flow_block_get()
203 flow_block_cb_incref(block_cb); in prestera_flow_block_get()
210 struct flow_block_cb *block_cb = block->block_cb; in prestera_flow_block_put() local
212 if (flow_block_cb_decref(block_cb)) in prestera_flow_block_put()
215 flow_block_cb_free(block_cb); in prestera_flow_block_put()
224 struct flow_block_cb *block_cb; in prestera_setup_flow_block_bind() local
232 block_cb = block->block_cb; in prestera_setup_flow_block_bind()
239 flow_block_cb_add(block_cb, f); in prestera_setup_flow_block_bind()
240 list_add_tail(&block_cb->driver_list, &prestera_block_cb_list); in prestera_setup_flow_block_bind()
261 struct flow_block_cb *block_cb; in prestera_setup_flow_block_unbind() local
264 block_cb = flow_block_cb_lookup(f->block, prestera_flow_block_cb, sw); in prestera_setup_flow_block_unbind()
265 if (!block_cb) in prestera_setup_flow_block_unbind()
268 block = flow_block_cb_priv(block_cb); in prestera_setup_flow_block_unbind()
276 if (!flow_block_cb_decref(block_cb)) { in prestera_setup_flow_block_unbind()
277 flow_block_cb_remove(block_cb, f); in prestera_setup_flow_block_unbind()
278 list_del(&block_cb->driver_list); in prestera_setup_flow_block_unbind()