svn commit: r273255 - in stable/10/sys: fs/ext2fs fs/msdosfs ufs/ffs

Konstantin Belousov kib at FreeBSD.org
Sat Oct 18 15:31:55 UTC 2014


Author: kib
Date: Sat Oct 18 15:31:53 2014
New Revision: 273255
URL: https://svnweb.freebsd.org/changeset/base/273255

Log:
  MFC r272952:
  Do not set IN_ACCESS flag for read-only mounts.

Modified:
  stable/10/sys/fs/ext2fs/ext2_vnops.c
  stable/10/sys/fs/msdosfs/msdosfs_vnops.c
  stable/10/sys/ufs/ffs/ffs_vnops.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/fs/ext2fs/ext2_vnops.c
==============================================================================
--- stable/10/sys/fs/ext2fs/ext2_vnops.c	Sat Oct 18 15:28:01 2014	(r273254)
+++ stable/10/sys/fs/ext2fs/ext2_vnops.c	Sat Oct 18 15:31:53 2014	(r273255)
@@ -1763,7 +1763,7 @@ ext2_ind_read(struct vop_read_args *ap)
 	}
 
 	if ((error == 0 || uio->uio_resid != orig_resid) &&
-	    (vp->v_mount->mnt_flag & MNT_NOATIME) == 0)
+	    (vp->v_mount->mnt_flag & (MNT_NOATIME | MNT_RDONLY)) == 0)
 		ip->i_flag |= IN_ACCESS;
 	return (error);
 }

Modified: stable/10/sys/fs/msdosfs/msdosfs_vnops.c
==============================================================================
--- stable/10/sys/fs/msdosfs/msdosfs_vnops.c	Sat Oct 18 15:28:01 2014	(r273254)
+++ stable/10/sys/fs/msdosfs/msdosfs_vnops.c	Sat Oct 18 15:31:53 2014	(r273255)
@@ -642,7 +642,7 @@ msdosfs_read(ap)
 		brelse(bp);
 	} while (error == 0 && uio->uio_resid > 0 && n != 0);
 	if (!isadir && (error == 0 || uio->uio_resid != orig_resid) &&
-	    (vp->v_mount->mnt_flag & MNT_NOATIME) == 0)
+	    (vp->v_mount->mnt_flag & (MNT_NOATIME | MNT_RDONLY)) == 0)
 		dep->de_flag |= DE_ACCESS;
 	return (error);
 }

Modified: stable/10/sys/ufs/ffs/ffs_vnops.c
==============================================================================
--- stable/10/sys/ufs/ffs/ffs_vnops.c	Sat Oct 18 15:28:01 2014	(r273254)
+++ stable/10/sys/ufs/ffs/ffs_vnops.c	Sat Oct 18 15:31:53 2014	(r273255)
@@ -628,7 +628,7 @@ ffs_read(ap)
 	}
 
 	if ((error == 0 || uio->uio_resid != orig_resid) &&
-	    (vp->v_mount->mnt_flag & MNT_NOATIME) == 0 &&
+	    (vp->v_mount->mnt_flag & (MNT_NOATIME | MNT_RDONLY)) == 0 &&
 	    (ip->i_flag & IN_ACCESS) == 0) {
 		VI_LOCK(vp);
 		ip->i_flag |= IN_ACCESS;


More information about the svn-src-all mailing list