All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@infradead.org>
To: Eric Blake <ebb9@byu.net>
Cc: Christoph Hellwig <hch@lst.de>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>,
	xfs@oss.sgi.com
Subject: Re: utimensat fails to update ctime
Date: Wed, 23 Dec 2009 02:53:02 -0500	[thread overview]
Message-ID: <20091223075302.GA27744@infradead.org> (raw)
In-Reply-To: <4B30BEC9.5030706@byu.net>

On Tue, Dec 22, 2009 at 05:42:49AM -0700, Eric Blake wrote:
> According to Dave Chinner on 12/22/2009 5:34 AM:
> > Yeah, it looks like the change to utimesat() back in 2.6.26 for
> > posix conformance made ATTR_CTIME appear outside inode truncation
> > and XFS wasn't updated for this change in behaviour at the VFS level.
> > Looks simple to fix, but I'm worried about introducing other
> > unintended ctime modifications - is there a test suite that checks
> > posix compliant atime/mtime/ctime behaviour around anywhere?
> 
> Yes - the gnulib unit test, consisting of:
> 
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/nap.h
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/test-utimens-common.h
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/test-utimens.h
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/test-lutimens.h
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/test-futimens.h
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/test-futimens.c
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/test-utimensat.c
> 
> Taken together, these files produce the executables test-futimens and
> test-utimensat which can demonstrate compliance with POSIX.  They are also
> bundled as part of GNU coreutils (the version bundled with coreutils 8.2
> didn't test for ctime compliance, and coreutils 8.3 hasn't been released
> yet) if you use 'make -C gnulib-tests check'.

Ok, I'll see if I can add the last GPLv2 licensed version into xfstests.

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@infradead.org>
To: Eric Blake <ebb9@byu.net>
Cc: Dave Chinner <david@fromorbit.com>,
	OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	xfs@oss.sgi.com, Christoph Hellwig <hch@lst.de>
Subject: Re: utimensat fails to update ctime
Date: Wed, 23 Dec 2009 02:53:02 -0500	[thread overview]
Message-ID: <20091223075302.GA27744@infradead.org> (raw)
In-Reply-To: <4B30BEC9.5030706@byu.net>

On Tue, Dec 22, 2009 at 05:42:49AM -0700, Eric Blake wrote:
> According to Dave Chinner on 12/22/2009 5:34 AM:
> > Yeah, it looks like the change to utimesat() back in 2.6.26 for
> > posix conformance made ATTR_CTIME appear outside inode truncation
> > and XFS wasn't updated for this change in behaviour at the VFS level.
> > Looks simple to fix, but I'm worried about introducing other
> > unintended ctime modifications - is there a test suite that checks
> > posix compliant atime/mtime/ctime behaviour around anywhere?
> 
> Yes - the gnulib unit test, consisting of:
> 
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/nap.h
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/test-utimens-common.h
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/test-utimens.h
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/test-lutimens.h
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/test-futimens.h
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/test-futimens.c
> http://git.savannah.gnu.org/cgit/gnulib.git/tree/tests/test-utimensat.c
> 
> Taken together, these files produce the executables test-futimens and
> test-utimensat which can demonstrate compliance with POSIX.  They are also
> bundled as part of GNU coreutils (the version bundled with coreutils 8.2
> didn't test for ctime compliance, and coreutils 8.3 hasn't been released
> yet) if you use 'make -C gnulib-tests check'.

Ok, I'll see if I can add the last GPLv2 licensed version into xfstests.


  reply	other threads:[~2009-12-23  7:52 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-18  5:38 utimensat fails to update ctime Eric Blake
2009-12-21  7:31 ` OGAWA Hirofumi
2009-12-21 13:12   ` Eric Blake
2009-12-21 13:39     ` Eric Blake
2009-12-21 15:05       ` OGAWA Hirofumi
2009-12-21 15:05         ` OGAWA Hirofumi
2009-12-22  4:37         ` Eric Blake
2009-12-22  4:37           ` Eric Blake
2009-12-22  9:00           ` OGAWA Hirofumi
2009-12-22  9:00             ` OGAWA Hirofumi
2009-12-22  9:56             ` [fuse-devel] " Jean-Pierre André
2009-12-22  9:56               ` Jean-Pierre André
2009-12-22 10:43               ` OGAWA Hirofumi
2009-12-22 10:43                 ` OGAWA Hirofumi
2009-12-22 12:07                 ` Jean-Pierre André
2009-12-22 12:07                   ` Jean-Pierre André
2009-12-22 13:00                   ` Miklos Szeredi
2009-12-22 13:00                     ` Miklos Szeredi
2009-12-22 13:30                   ` OGAWA Hirofumi
2009-12-22 13:30                     ` OGAWA Hirofumi
2009-12-22 16:16                     ` Jean-Pierre André
2009-12-22 16:16                       ` Jean-Pierre André
2009-12-22 17:58                       ` OGAWA Hirofumi
2009-12-22 17:58                         ` OGAWA Hirofumi
2009-12-23  9:43                         ` Jean-Pierre André
2009-12-23  9:43                           ` Jean-Pierre André
2009-12-23 11:08                           ` OGAWA Hirofumi
2009-12-23 11:08                             ` OGAWA Hirofumi
2009-12-23 12:54                         ` Eric Blake
2009-12-23 12:54                           ` Eric Blake
2009-12-23 19:23                           ` OGAWA Hirofumi
2009-12-23 19:23                             ` OGAWA Hirofumi
2009-12-24  0:17                           ` ctrn3e8
2009-12-24  0:50                             ` Eric Blake
2009-12-24  0:50                               ` Eric Blake
2009-12-23 14:28                         ` Jean-Pierre André
2009-12-23 14:28                           ` Jean-Pierre André
2009-12-22 12:34           ` Dave Chinner
2009-12-22 12:34             ` Dave Chinner
2009-12-22 12:42             ` Eric Blake
2009-12-22 12:42               ` Eric Blake
2009-12-23  7:53               ` Christoph Hellwig [this message]
2009-12-23  7:53                 ` Christoph Hellwig
2009-12-22 17:45         ` Christoph Hellwig
2009-12-22 17:45           ` Christoph Hellwig
2009-12-22 19:06           ` OGAWA Hirofumi
2009-12-22 19:06             ` OGAWA Hirofumi

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=20091223075302.GA27744@infradead.org \
    --to=hch@infradead.org \
    --cc=ebb9@byu.net \
    --cc=hch@lst.de \
    --cc=hirofumi@mail.parknet.co.jp \
    --cc=linux-kernel@vger.kernel.org \
    --cc=xfs@oss.sgi.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.