sys/vfs/tmpfs: Remove duplicated cross-device check on nlink vop
authorTomohiro Kusumi <kusumi.tomohiro@gmail.com>
Wed, 13 May 2015 21:54:24 +0000 (06:54 +0900)
committerTomohiro Kusumi <kusumi.tomohiro@gmail.com>
Wed, 13 May 2015 22:29:55 +0000 (07:29 +0900)
- 'if (dvp->v_mount != vp->v_mount)' which avoids cross-device
  hard link appears twice in this function after this one.

- Maybe this should be done in sys/kern/vfs_vopops.c considering
  fs that implement nlink have the same check (not sure if it
  should be applied to all fs though  e.g. unionfs).

  # grep -rIl EXDEV sys/vfs/
  sys/vfs/smbfs/smbfs_vnops.c
  sys/vfs/union/union_vnops.c
  sys/vfs/tmpfs/tmpfs_vnops.c
  sys/vfs/dirfs/dirfs_vnops.c
  sys/vfs/nfs/nfs_serv.c
  sys/vfs/nfs/nfs_vnops.c
  sys/vfs/hammer2/hammer2_vnops.c
  sys/vfs/puffs/puffs_vfsops.c
  sys/vfs/puffs/puffs_vnops.c
  sys/vfs/ufs/ufs_vnops.c
  sys/vfs/msdosfs/msdosfs_vnops.c
  sys/vfs/hammer/hammer_vnops.c

sys/vfs/tmpfs/tmpfs_vnops.c

index b3f9d6e..86c3185 100644 (file)
@@ -969,8 +969,6 @@ tmpfs_nlink(struct vop_nlink_args *v)
        struct mount *mp;
        int error;
 
-       if (dvp->v_mount != vp->v_mount)
-               return(EXDEV);
        mp = dvp->v_mount;
 
        KKASSERT(dvp != vp); /* XXX When can this be false? */