Lines Matching refs:indr_dev
336 struct flow_indr_dev *indr_dev; in flow_indr_dev_alloc() local
338 indr_dev = kmalloc(sizeof(*indr_dev), GFP_KERNEL); in flow_indr_dev_alloc()
339 if (!indr_dev) in flow_indr_dev_alloc()
342 indr_dev->cb = cb; in flow_indr_dev_alloc()
343 indr_dev->cb_priv = cb_priv; in flow_indr_dev_alloc()
344 refcount_set(&indr_dev->refcnt, 1); in flow_indr_dev_alloc()
346 return indr_dev; in flow_indr_dev_alloc()
351 struct flow_indr_dev *indr_dev; in flow_indr_dev_register() local
354 list_for_each_entry(indr_dev, &flow_block_indr_dev_list, list) { in flow_indr_dev_register()
355 if (indr_dev->cb == cb && in flow_indr_dev_register()
356 indr_dev->cb_priv == cb_priv) { in flow_indr_dev_register()
357 refcount_inc(&indr_dev->refcnt); in flow_indr_dev_register()
363 indr_dev = flow_indr_dev_alloc(cb, cb_priv); in flow_indr_dev_register()
364 if (!indr_dev) { in flow_indr_dev_register()
369 list_add(&indr_dev->list, &flow_block_indr_dev_list); in flow_indr_dev_register()
402 struct flow_indr_dev *this, *next, *indr_dev = NULL; in flow_indr_dev_unregister() local
410 indr_dev = this; in flow_indr_dev_unregister()
411 list_del(&indr_dev->list); in flow_indr_dev_unregister()
416 if (!indr_dev) { in flow_indr_dev_unregister()
425 kfree(indr_dev); in flow_indr_dev_unregister()