linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Steven Whitehouse <swhiteho@redhat.com>
To: Andreas Dilger <adilger@dilger.ca>
Cc: yangsheng <sickamd@gmail.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
	"adilger.kernel@dilger.ca" <adilger.kernel@dilger.ca>,
	"linux-ext4@vger.kernel.org" <linux-ext4@vger.kernel.org>
Subject: Re: [PATCH] Update atime from future.
Date: Mon, 03 Jan 2011 16:41:16 +0000	[thread overview]
Message-ID: <1294072876.2429.110.camel@dolmen> (raw)
In-Reply-To: <E8737614-4ED4-4732-9B03-90811029A0F7@dilger.ca>

Hi,

On Mon, 2011-01-03 at 09:27 -0700, Andreas Dilger wrote:
> On 2011-01-03, at 3:27, Steven Whitehouse <swhiteho@redhat.com> wrote:
> > On Wed, 2010-12-29 at 21:58 +0800, yangsheng wrote:
> >> Signed-off-by: sickamd@gmail.com
> >> ---
> >> fs/inode.c |    8 +++++++-
> >> 1 files changed, 7 insertions(+), 1 deletions(-)
> >> 
> >> diff --git a/fs/inode.c b/fs/inode.c
> >> index da85e56..6c8effd 100644
> >> --- a/fs/inode.c
> >> +++ b/fs/inode.c
> >> @@ -1469,7 +1469,13 @@ static int relatime_need_update(struct vfsmount *mnt, struct inode *inode,
> >>        return 1;
> >> 
> >>    /*
> >> -     * Is the previous atime value older than a day? If yes,
> >> +     * Is the previous atime value in future? If yes,
> >> +     * update atime:
> >> +     */
> >> +    if ((long)(now.tv_sec - inode->i_atime.tv_sec) < 0)
> >> +        return 1;
> >> +    /*
> >> +     * Is the previous atime value old than a day? If yes,
> >>     * update atime:
> >>     */
> >>    if ((long)(now.tv_sec - inode->i_atime.tv_sec) >= 24*60*60)
> > 
> > I don't think this is a good plan for cluster filesystems, since if the
> > times on the nodes are not exactly synchronised (we do highly recommend
> > people run ntp or similar) then this might lead to excessive atime
> > updating. The current behaviour is to ignore atimes which are in the
> > future for exactly this reason,
> 
> The problem that is seen is if a tarball has stored a bad atime, or someone fat-fingers a "touch" then the future atime will never be fixed. Before the relatime patch, the future atime would be updated back to the current time on the next access. One if our regression tests for Lustre caught this. 
> 
> I wouldn't mind changing the relatime check so that it only updates the atime if it is more than one day in the future. That will avoid thrashing atime if the clocks are only slightly out of sync, but still allow fixing completely bogus atimes. 
> 
> Cheers, Andreas

That sounds like a good solution to me,

Steve.



  reply	other threads:[~2011-01-03 16:40 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-12-29 13:58 [PATCH] Update atime from future yangsheng
2011-01-03 10:17 ` Andrew Morton
2011-01-03 12:54   ` YangSheng
2011-01-04 14:56   ` Rogier Wolff
2011-01-03 10:27 ` Steven Whitehouse
2011-01-03 16:27   ` Andreas Dilger
2011-01-03 16:41     ` Steven Whitehouse [this message]
2011-01-03 16:44   ` YangSheng
2011-01-11 13:33   ` Pavel Machek
2011-01-13 14:18     ` Steven Whitehouse
2011-01-04  9:08 yangsheng
2012-12-03 17:56 yangsheng
2012-12-03 18:08 ` Greg KH
2012-12-04 19:41 ` Zach Brown
2012-12-04 20:24 ` Dave Chinner
2012-12-05  0:22   ` Andreas Dilger
2012-12-07  0:49     ` Dave Chinner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1294072876.2429.110.camel@dolmen \
    --to=swhiteho@redhat.com \
    --cc=adilger.kernel@dilger.ca \
    --cc=adilger@dilger.ca \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sickamd@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).