Lines Matching refs:lip
225 struct ldi_ident *lip, **lipp, *retlip; in ident_alloc() local
236 lip = kmem_zalloc(sizeof (*lip), KM_SLEEP); in ident_alloc()
249 kmem_free(lip, sizeof (struct ldi_ident)); in ident_alloc()
254 lip->li_next = NULL; in ident_alloc()
255 lip->li_ref = 1; in ident_alloc()
256 lip->li_modid = modid; in ident_alloc()
257 lip->li_major = major; in ident_alloc()
258 lip->li_dip = dip; in ident_alloc()
259 lip->li_dev = dev; in ident_alloc()
260 (void) strncpy(lip->li_modname, mod_name, sizeof (lip->li_modname) - 1); in ident_alloc()
263 lip->li_next = ldi_ident_hash[index]; in ident_alloc()
264 ldi_ident_hash[index] = lip; in ident_alloc()
267 return (lip); in ident_alloc()
271 ident_hold(struct ldi_ident *lip) in ident_hold() argument
275 ASSERT(lip != NULL); in ident_hold()
276 index = LI_HASH(lip->li_modid, lip->li_dip, lip->li_dev); in ident_hold()
278 ASSERT(lip->li_ref > 0); in ident_hold()
279 lip->li_ref++; in ident_hold()
284 ident_release(struct ldi_ident *lip) in ident_release() argument
289 ASSERT(lip != NULL); in ident_release()
290 index = LI_HASH(lip->li_modid, lip->li_dip, lip->li_dev); in ident_release()
293 ASSERT(lip->li_ref > 0); in ident_release()
294 if (--lip->li_ref > 0) { in ident_release()
302 lip->li_modid, lip->li_dip, lip->li_dev, lip->li_major); in ident_release()
305 *lipp = lip->li_next; in ident_release()
307 kmem_free(lip, sizeof (struct ldi_ident)); in ident_release()
1034 ldi_usage_walker_helper(struct ldi_ident *lip, vnode_t *vp, in ldi_usage_walker_helper() argument
1048 dev = lip->li_dev; in ldi_usage_walker_helper()
1051 dip = lip->li_dip; in ldi_usage_walker_helper()
1059 ldi_usage.src_modid = lip->li_modid; in ldi_usage_walker_helper()
1060 ldi_usage.src_name = lip->li_modname; in ldi_usage_walker_helper()
1073 if (((lip->li_major == -1) && (dev == DDI_DEV_T_NONE)) || in ldi_usage_walker_helper()
1132 major = lip->li_major; in ldi_usage_walker_helper()
1172 struct ldi_ident *lip; in ldi_usage_walker() local
1182 lip = lhp->lh_ident; in ldi_usage_walker()
1186 ret = ldi_usage_walker_helper(lip, vp, arg, callback); in ldi_usage_walker()
1431 ldi_ident_from_mod(struct modlinkage *modlp, ldi_ident_t *lip) in ldi_ident_from_mod() argument
1437 if ((modlp == NULL) || (lip == NULL)) in ldi_ident_from_mod()
1450 *lip = (ldi_ident_t)ident_alloc(name, NULL, DDI_DEV_T_NONE, major); in ldi_ident_from_mod()
1453 "ldi_ident_from_mod", (void *)*lip, name)); in ldi_ident_from_mod()
1461 ldi_ident_t lip; in ldi_ident_from_anon() local
1465 lip = (ldi_ident_t)ident_alloc("genunix", NULL, DDI_DEV_T_NONE, -1); in ldi_ident_from_anon()
1468 "ldi_ident_from_anon", (void *)lip, "genunix")); in ldi_ident_from_anon()
1470 return (lip); in ldi_ident_from_anon()
1478 ldi_ident_from_stream(struct queue *sq, ldi_ident_t *lip) in ldi_ident_from_stream() argument
1484 if ((sq == NULL) || (lip == NULL)) in ldi_ident_from_stream()
1497 *lip = (ldi_ident_t)ident_alloc(name, NULL, dev, -1); in ldi_ident_from_stream()
1501 "ldi_ident_from_stream", (void *)*lip, name, getminor(dev), in ldi_ident_from_stream()
1508 ldi_ident_from_dev(dev_t dev, ldi_ident_t *lip) in ldi_ident_from_dev() argument
1512 if (lip == NULL) in ldi_ident_from_dev()
1520 *lip = (ldi_ident_t)ident_alloc(name, NULL, dev, -1); in ldi_ident_from_dev()
1524 "ldi_ident_from_dev", (void *)*lip, name, getminor(dev))); in ldi_ident_from_dev()
1530 ldi_ident_from_dip(dev_info_t *dip, ldi_ident_t *lip) in ldi_ident_from_dip() argument
1535 if ((dip == NULL) || (lip == NULL)) in ldi_ident_from_dip()
1543 *lip = (ldi_ident_t)ident_alloc(name, dip, DDI_DEV_T_NONE, -1); in ldi_ident_from_dip()
1547 "ldi_ident_from_dip", (void *)*lip, name, (void *)devi)); in ldi_ident_from_dip()
1553 ldi_ident_from_major(major_t major, ldi_ident_t *lip) in ldi_ident_from_major() argument
1557 if (lip == NULL) in ldi_ident_from_major()
1565 *lip = (ldi_ident_t)ident_alloc(name, NULL, DDI_DEV_T_NONE, major); in ldi_ident_from_major()
1569 "ldi_ident_from_major", (void *)*lip, name)); in ldi_ident_from_major()
1599 struct ldi_ident *lip = (struct ldi_ident *)li; in ldi_open_by_dev() local
1605 (lhp == NULL) || (lip == NULL)) in ldi_open_by_dev()
1613 if ((ret = ldi_open_by_vp(&vp, flag, cr, lhp, lip)) == 0) { in ldi_open_by_dev()
1626 struct ldi_ident *lip = (struct ldi_ident *)li; in ldi_open_by_name() local
1632 (cr == NULL) || (lhp == NULL) || (lip == NULL)) in ldi_open_by_name()
1640 ret = ldi_open_by_vp(&vp, flag, cr, lhp, lip); in ldi_open_by_name()
1651 struct ldi_ident *lip = (struct ldi_ident *)li; in ldi_open_by_devid() local
1657 (lhp == NULL) || (lip == NULL)) in ldi_open_by_devid()
1665 ret = ldi_open_by_vp(&vp, flag, cr, lhp, lip); in ldi_open_by_devid()
1707 struct ldi_ident *lip = handlep->lh_ident; in ldi_close() local
1708 ASSERT(lip != NULL); in ldi_close()
1711 "closing devices", lip->li_modname); in ldi_close()