on 28/08/2013 03:39 Xin LI said the following:
> @@ -6250,8 +6250,11 @@ zfs_freebsd_rename(ap)
>       ASSERT(ap->a_fcnp->cn_flags & (SAVENAME|SAVESTART));
>       ASSERT(ap->a_tcnp->cn_flags & (SAVENAME|SAVESTART));
>  
> -     error = zfs_rename(fdvp, ap->a_fcnp->cn_nameptr, tdvp,
> -         ap->a_tcnp->cn_nameptr, ap->a_fcnp->cn_cred, NULL, 0);
> +     if (fdvp->v_mount == tdvp->v_mount)
> +             error = zfs_rename(fdvp, ap->a_fcnp->cn_nameptr, tdvp,
> +                 ap->a_tcnp->cn_nameptr, ap->a_fcnp->cn_cred, NULL, 0);
> +     else
> +             error = EXDEV;
>  
>       if (tdvp == tvp)
>               VN_RELE(tdvp);

So, I am still not sure if that is important or not, but this change still 
misses
        (tvp && (fvp->v_mount != tvp->v_mount))
check as found in ufs_rename.

-- 
Andriy Gapon
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to