Lines Matching refs:mi

67 lock_bucket(cred_t *cr, mntinfo4_t *mi)
78 ASSERT(mi != NULL);
79 ASSERT(mutex_owned(&mi->mi_lock));
81 bucketp = &(mi->mi_oo_list[hash_key]);
299 find_open_owner_nolock(cred_t *cr, int just_created, mntinfo4_t *mi)
308 ASSERT(mi != NULL);
309 ASSERT(mutex_owned(&mi->mi_lock));
311 bucketp = lock_bucket(cr, mi);
338 nfs4_free_open_owner(oop, mi);
346 oop = find_freed_open_owner(cr, bucketp, mi);
354 find_open_owner(cred_t *cr, int just_created, mntinfo4_t *mi)
358 mutex_enter(&mi->mi_lock);
359 oop = find_open_owner_nolock(cr, just_created, mi);
360 mutex_exit(&mi->mi_lock);
507 nfs4_get_open_stateid(rnode4_t *rp, cred_t *cr, mntinfo4_t *mi, stateid4 *sid)
512 ASSERT(mi != NULL);
514 oop = find_open_owner(cr, NFS4_PERM_CREATED, mi);
554 nfs4_get_w_stateid(cred_t *cr, rnode4_t *rp, pid_t pid, mntinfo4_t *mi,
571 if (nfs4_get_open_stateid(rp, cr, mi, &sid)) {
598 nfs4_get_stateid(cred_t *cr, rnode4_t *rp, pid_t pid, mntinfo4_t *mi,
639 if (nfs4_get_open_stateid(rp, cr, mi, &sid)) {
683 create_open_owner(cred_t *cr, mntinfo4_t *mi)
712 ASSERT(mutex_owned(&mi->mi_lock));
713 bucketp = lock_bucket(cr, mi);
946 nfs4_start_open_seqid_sync(nfs4_open_owner_t *oop, mntinfo4_t *mi)
954 if (seqid_sync_faults && curthread != mi->mi_recovthread &&
959 mutex_enter(&mi->mi_lock);
960 if ((mi->mi_flags & MI4_RECOV_ACTIV) &&
961 curthread != mi->mi_recovthread)
963 mutex_exit(&mi->mi_lock);
980 mutex_enter(&mi->mi_lock);
981 if ((mi->mi_flags & MI4_RECOV_ACTIV) &&
982 curthread != mi->mi_recovthread)
984 mutex_exit(&mi->mi_lock);
1231 nfs4_start_lock_seqid_sync(nfs4_lock_owner_t *lop, mntinfo4_t *mi)
1239 if (seqid_sync_faults && curthread != mi->mi_recovthread &&
1244 mutex_enter(&mi->mi_lock);
1245 if ((mi->mi_flags & MI4_RECOV_ACTIV) &&
1246 curthread != mi->mi_recovthread)
1248 mutex_exit(&mi->mi_lock);
1268 mutex_enter(&mi->mi_lock);
1269 if ((mi->mi_flags & MI4_RECOV_ACTIV) &&
1270 curthread != mi->mi_recovthread)
1272 mutex_exit(&mi->mi_lock);
1318 mntinfo4_t *mi;
1322 mi = VTOMI4(RTOV4(rp));
1358 *oopp = find_open_owner(cr, NFS4_PERM_CREATED, mi);
1361 error = nfs4_start_open_seqid_sync(*oopp, mi);
1399 error = nfs4_start_lock_seqid_sync(lop, mi);
1448 mntinfo4_t *mi)
1455 ASSERT(mutex_owned(&mi->mi_lock));
1459 for (foop = list_head(&mi->mi_foo_list); foop != NULL;
1460 foop = list_next(&mi->mi_foo_list, foop)) {
1467 list_remove(&mi->mi_foo_list, foop);
1468 mi->mi_foo_num--;
1480 * Insert the newly freed 'oop' into the mi's freed oop list,
1486 nfs4_free_open_owner(nfs4_open_owner_t *oop, mntinfo4_t *mi)
1490 if (mi->mi_foo_num < mi->mi_foo_max) {
1494 mi->mi_foo_num, mi->mi_foo_max, (void *)oop,
1495 (void *)mi));
1496 list_insert_head(&mi->mi_foo_list, oop);
1497 mi->mi_foo_num++;
1503 lru_foop = list_tail(&mi->mi_foo_list);
1509 list_remove(&mi->mi_foo_list, lru_foop);
1513 list_insert_head(&mi->mi_foo_list, oop);
1572 nfs4_get_otw_cred(cred_t *cr, mntinfo4_t *mi, nfs4_open_owner_t *provided_oop)
1578 oop = find_open_owner(cr, NFS4_PERM_CREATED, mi);
1802 mntinfo4_t *mi;
1836 mi = VTOMI4(vp);
1941 argop[1].nfs_argop4_u.opgetattr.mi = mi;
1955 rfs4call(mi, &args, &res, cred_otw, &doqueue, 0, ep);
1971 needrecov = nfs4_needs_recovery(ep, TRUE, mi->mi_vfsp);
2034 mntinfo4_t *mi;
2089 mi = VTOMI4(vp);
2095 (vp->v_flag & VROOT) ? mi->mi_srvparentfh :
2100 mi = VTOMI4(dvp);
2135 open_args->owner.clientid = mi2clientid(mi);
2141 ep->error = nfs4_start_open_seqid_sync(oop, mi);
2161 argop[3].nfs_argop4_u.opgetattr.mi = mi;
2167 rfs4call(mi, &args, &res, cr, &doqueue, 0, ep);
2230 (void) nfs_rw_enter_sig(&mi->mi_fh_lock, RW_READER, 0);
2234 if (mi->mi_fh_expire_type == FH4_PERSISTENT ||
2235 mi->mi_fh_expire_type & FH4_NOEXPIRE_WITH_OPEN) {
2237 if (mi->mi_fh_expire_type == FH4_PERSISTENT)
2252 nfs_rw_exit(&mi->mi_fh_lock);
2284 nfs_rw_exit(&mi->mi_fh_lock);
2298 * We need to drop mi->mi_fh_lock since
2303 nfs_rw_exit(&mi->mi_fh_lock);
2308 nfs_rw_exit(&mi->mi_fh_lock);
2377 nfs4_inc_state_ref_count(mi);