Lines Matching refs:rp

1793 	rnode4_t *rp = VTOR4(vp);
1807 "nfs4_remap_file: remapping %s", rnode4info(rp)));
1830 cred_otw = nfs4_get_otw_cred_by_osp(rp, cr, &osp,
1834 if (rp->r_flags & R4ISXATTR) {
1849 remap_lookup(rp->r_svnode.sv_name, rootvp, filetype, cred_otw,
1869 mutex_enter(&rp->r_statelock);
1870 rp->r_delay_interval = 0;
1871 mutex_exit(&rp->r_statelock);
1927 mutex_enter(&rp->r_statelock);
1931 rp->r_size != gar.n4g_va.va_size)) {
1934 (int)rp->r_size, (int)gar.n4g_va.va_size,
1936 mutex_exit(&rp->r_statelock);
1938 rp->r_server->sv_hostname, 0, vp, NULL, 0, NULL, 0,
1945 rp->r_server = mi->mi_curr_serv;
1960 (void) nfs_rw_enter_sig(&rp->r_server->sv_lock, RW_READER, 0);
1961 rp->r_srv_fsid = gar.n4g_fsid;
1962 if (!FATTR4_FSID_EQ(&gar.n4g_fsid, &rp->r_server->sv_fsid))
1964 nfs_rw_exit(&rp->r_server->sv_lock);
1968 "remap_file: fsid attr not provided by server. rp=%p",
1969 (void *)rp));
1973 r4_stub_mirrormount(rp);
1975 r4_stub_none(rp);
1976 mutex_exit(&rp->r_statelock);
1978 sfh4_update(rp->r_fh, &newfh);
1985 if (rp->r_svnode.sv_dfh != NULL)
1986 sfh4_update(rp->r_svnode.sv_dfh, &newpfh);
2004 open_stream_rele(osp, rp);
2054 rnode4_t *rp;
2087 rp = r4find_unlocked(fhp, mi->mi_vfsp);
2088 if (rp != NULL) {
2089 *vpp = RTOV4(rp);
2388 rddir4_cache_create(rnode4_t *rp)
2390 ASSERT(rp->r_dir == NULL);
2392 rp->r_dir = kmem_alloc(sizeof (avl_tree_t), KM_SLEEP);
2394 avl_create(rp->r_dir, rddir4_cache_compar, sizeof (rddir4_cache_impl),
2402 rddir4_cache_purge(rnode4_t *rp)
2407 ASSERT(MUTEX_HELD(&rp->r_statelock));
2409 if (rp->r_dir == NULL)
2412 rdip = avl_first(rp->r_dir);
2415 nrdip = AVL_NEXT(rp->r_dir, rdip);
2416 avl_remove(rp->r_dir, rdip);
2418 rddir4_cache_rele(rp, &rdip->rc);
2421 ASSERT(avl_numnodes(rp->r_dir) == 0);
2428 rddir4_cache_destroy(rnode4_t *rp)
2430 ASSERT(MUTEX_HELD(&rp->r_statelock));
2431 if (rp->r_dir == NULL)
2434 rddir4_cache_purge(rp);
2435 avl_destroy(rp->r_dir);
2436 kmem_free(rp->r_dir, sizeof (avl_tree_t));
2437 rp->r_dir = NULL;
2453 rddir4_cache_lookup(rnode4_t *rp, offset_t cookie, int count)
2463 ASSERT(nfs_rw_lock_held(&rp->r_rwlock, RW_READER));
2464 ASSERT(MUTEX_HELD(&rp->r_statelock));
2470 if (rp->r_dir == NULL) {
2476 mutex_exit(&rp->r_statelock);
2480 mutex_enter(&rp->r_statelock);
2490 rdip = avl_find(rp->r_dir, &srdip, &where);
2504 avl_insert(rp->r_dir, nrdc->data, where);
2521 avl_insert(rp->r_dir, nrdc->data, where);
2532 mutex_exit(&rp->r_statelock);
2536 mutex_enter(&rp->r_statelock);
2576 nfs_rw_exit(&rp->r_rwlock);
2582 if (!cv_wait_sig(&rdc->cv, &rp->r_statelock)) {
2588 rddir4_cache_rele(rp, rdc);
2589 mutex_exit(&rp->r_statelock);
2590 (void) nfs_rw_enter_sig(&rp->r_rwlock,
2592 mutex_enter(&rp->r_statelock);
2596 mutex_exit(&rp->r_statelock);
2597 (void) nfs_rw_enter_sig(&rp->r_rwlock,
2599 mutex_enter(&rp->r_statelock);
2608 rddir4_cache_rele(rp, rdc);
2673 rddir4_cache_rele(rnode4_t *rp, rddir4_cache *rdc)
2677 ASSERT(MUTEX_HELD(&rp->r_statelock));
2890 rnode4_t *rp;
2892 rp = VTOR4(vp);
2896 if (rp->r_flags & R4DIRECTIO)
2905 if (rp->r_flags & R4DIRECTIO) {
2911 ((rp->r_flags & R4DIRTY) || rp->r_awcount > 0)) {
2916 mutex_enter(&rp->r_statelock);
2917 if (!rp->r_error)
2918 rp->r_error = error;
2919 mutex_exit(&rp->r_statelock);
2926 mutex_enter(&rp->r_statelock);
2927 rp->r_flags |= R4DIRECTIO;
2928 mutex_exit(&rp->r_statelock);
2934 mutex_enter(&rp->r_statelock);
2935 rp->r_flags &= ~R4DIRECTIO; /* disable direct mode */
2936 mutex_exit(&rp->r_statelock);
2952 rnode4_t *rp;
2954 rp = VTOR4(vp);
2955 if (IS_SHADOW(vp, rp))
2956 vp = RTOV4(rp); /* RTOV4 always gives the master */
3128 rnode4info(rnode4_t *rp)
3135 if (rp == NULL)
3137 if (rp->r_flags & R4ISXATTR)
3139 else if (RTOV4(rp)->v_flag & V_XATTRDIR)
3141 else if (RTOV4(rp)->v_flag & VROOT)
3143 else if (RTOV4(rp)->v_type == VDIR)
3145 else if (RTOV4(rp)->v_type == VREG)
3149 sfh4_copyval(rp->r_fh, &fhandle);
3150 path = fn_path(rp->r_svnode.sv_name);
3152 (void *)rp, path, type, rp->r_flags,