[Top] [All Lists]

Re: [fuse-devel] utimensat fails to update ctime

To: Eric Blake <ebb9@xxxxxxx>
Subject: Re: [fuse-devel] utimensat fails to update ctime
From: OGAWA Hirofumi <hirofumi@xxxxxxxxxxxxxxxxxx>
Date: Thu, 24 Dec 2009 04:23:28 +0900
Cc: Jean-Pierre André <jean-pierre.andre@xxxxxxxxxx>, fuse-devel@xxxxxxxxxxxxxxxxxxxxx, Miklos Szeredi <miklos@xxxxxxxxxx>, Christoph Hellwig <hch@xxxxxx>, Linux Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx>, xfs@xxxxxxxxxxx, ctrn3e8 <ctrn3e8@xxxxxxxxx>, bug-coreutils <bug-coreutils@xxxxxxx>
In-reply-to: <4B3212ED.4090208@xxxxxxx> (Eric Blake's message of "Wed, 23 Dec 2009 05:54:05 -0700")
References: <4B2B156D.9040604@xxxxxxx> <87aaxclr4q.fsf@xxxxxxxxxxxxxxxxxxx> <4B2F7421.10005@xxxxxxx> <4B2F7A95.3010708@xxxxxxx> <87hbrkjrk8.fsf@xxxxxxxxxxxxxxxxxxx> <4B304D04.6040501@xxxxxxx> <87d427jscr.fsf@xxxxxxxxxxxxxxxxxxx> <4B3097C4.3060803@xxxxxxxxxx> <874onjjnln.fsf@xxxxxxxxxxxxxxxxxxx> <4B30B67A.7080703@xxxxxxxxxx> <87ljgvi1an.fsf@xxxxxxxxxxxxxxxxxxx> <4B30F0C9.2020702@xxxxxxxxxx> <87my1aevro.fsf@xxxxxxxxxxxxxxxxxxx> <4B3212ED.4090208@xxxxxxx>
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.90 (gnu/linux)
Eric Blake <ebb9@xxxxxxx> writes:

> By the way, is there any reliable way, other than uname() and checking for
> a minimum kernel version, to tell if all file systems will properly
> support UTIME_OMIT?

Um... sorry, I don't know. And it might be hard to detect efficiently if
the workaround is enough efficient like one fstat() syscall (Pass fd to
kernel.  I.e. just read from cached inode).

> For coreutils 8.3, we will be inserting a workaround where instead of
> using UTIME_OMIT, we call fstatat() in advance of utimensat() and pass
> the original timestamp down.  But it would be nice to avoid the
> penalty of the extra stat if there were a reliable way to ensure that,
> regardless of file system, the use of UTIME_OMIT will be honored.
> After all, coreutils wants touch(1) to work regardless of how old the
> user's kernel and file system drivers are.

Or it would depend on coreutils policy though, personally I think it's
ok that it ignores the bug as known fs bug, otherwise coreutils would
need to collect workarounds on several filesystems of several OSes.

OGAWA Hirofumi <hirofumi@xxxxxxxxxxxxxxxxxx>

<Prev in Thread] Current Thread [Next in Thread>