Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 Oct 2014 00:39:54 +1100 (EST)
From:      Bruce Evans <brde@optusnet.com.au>
To:        Konstantin Belousov <kib@freebsd.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r272952 - in head/sys: fs/ext2fs fs/msdosfs ufs/ffs
Message-ID:  <20141013003313.G932@besplex.bde.org>
In-Reply-To: <201410111909.s9BJ9ueU031008@svn.freebsd.org>
References:  <201410111909.s9BJ9ueU031008@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20141013003313.G932>