SOLARIS: Use vn_renamepath when available
[openafs.git] / src / afs / SOLARIS / osi_vnodeops.c
index b0076ec..068a4b3 100644 (file)
@@ -1557,7 +1557,10 @@ gafs_rename(struct vcache *aodp, char *aname1,
        (void) afs_lookup(andp, aname2, &avcp, NULL, 0, NULL, acred);
        if (avcp) {
            struct vnode *vp = AFSTOV(avcp), *pvp = AFSTOV(andp);
-           
+
+# ifdef AFS_SUN511_ENV
+           vn_renamepath(pvp, vp, aname2, strlen(aname2));
+# else
            mutex_enter(&vp->v_lock);
            if (vp->v_path != NULL) {
                kmem_free(vp->v_path, strlen(vp->v_path) + 1);
@@ -1565,6 +1568,7 @@ gafs_rename(struct vcache *aodp, char *aname1,
            }
            mutex_exit(&vp->v_lock);
            vn_setpath(afs_globalVp, pvp, vp, aname2, strlen(aname2));
+# endif /* !AFS_SUN511_ENV */
 
            AFS_RELE(avcp);
        }