Lines Matching refs:indr_dev
392 struct flow_indr_dev *indr_dev; in flow_indr_dev_alloc() local
394 indr_dev = kmalloc(sizeof(*indr_dev), GFP_KERNEL); in flow_indr_dev_alloc()
395 if (!indr_dev) in flow_indr_dev_alloc()
398 indr_dev->cb = cb; in flow_indr_dev_alloc()
399 indr_dev->cb_priv = cb_priv; in flow_indr_dev_alloc()
400 refcount_set(&indr_dev->refcnt, 1); in flow_indr_dev_alloc()
402 return indr_dev; in flow_indr_dev_alloc()
434 struct flow_indr_dev *indr_dev; in flow_indr_dev_register() local
437 list_for_each_entry(indr_dev, &flow_block_indr_dev_list, list) { in flow_indr_dev_register()
438 if (indr_dev->cb == cb && in flow_indr_dev_register()
439 indr_dev->cb_priv == cb_priv) { in flow_indr_dev_register()
440 refcount_inc(&indr_dev->refcnt); in flow_indr_dev_register()
446 indr_dev = flow_indr_dev_alloc(cb, cb_priv); in flow_indr_dev_register()
447 if (!indr_dev) { in flow_indr_dev_register()
452 list_add(&indr_dev->list, &flow_block_indr_dev_list); in flow_indr_dev_register()
488 struct flow_indr_dev *this, *next, *indr_dev = NULL; in flow_indr_dev_unregister() local
496 indr_dev = this; in flow_indr_dev_unregister()
497 list_del(&indr_dev->list); in flow_indr_dev_unregister()
502 if (!indr_dev) { in flow_indr_dev_unregister()
512 kfree(indr_dev); in flow_indr_dev_unregister()