svn commit: r272952 - in head/sys: fs/ext2fs fs/msdosfs ufs/ffs

Bruce Evans brde at optusnet.com.au
Sun Oct 12 13:40:04 UTC 2014


On Sat, 11 Oct 2014, Konstantin Belousov wrote:

> Log:
>  Do not set IN_ACCESS flag for read-only mounts.  The IN_ACCESS
>  survives remount in rw, also it is set for vnodes on rootfs before
>  noatime can be set or clock is adjusted.  All conditions result in
>  wrong atime for accessed vnodes.
>
>  Submitted by:	bde
>  MFC after:	1 week

Thanks.

> ...
> Modified: head/sys/ufs/ffs/ffs_vnops.c
> ==============================================================================
> --- head/sys/ufs/ffs/ffs_vnops.c	Sat Oct 11 18:58:58 2014	(r272951)
> +++ head/sys/ufs/ffs/ffs_vnops.c	Sat Oct 11 19:09:56 2014	(r272952)
> @@ -627,7 +627,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;
>

Is it correct for only ffs to acquire the vnode interlock?  I think it
is, but don't remember which ffs-only feature requires it.

Bruce


More information about the svn-src-head mailing list