[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4B3097C4.3060803@wanadoo.fr>
Date: Tue, 22 Dec 2009 10:56:20 +0100
From: Jean-Pierre André <jean-pierre.andre@...adoo.fr>
To: OGAWA Hirofumi <hirofumi@...l.parknet.co.jp>
CC: Eric Blake <ebb9@....net>, fuse-devel@...ts.sourceforge.net,
Miklos Szeredi <miklos@...redi.hu>,
Christoph Hellwig <hch@....de>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
xfs@....sgi.com
Subject: Re: [fuse-devel] utimensat fails to update ctime
Hi all,
OGAWA Hirofumi wrote:
> Eric Blake<ebb9@....net> writes:
>
>
> It is likely the issue of libfuse or ntfs-3g. I don't know about ntfs-3g
> people at all. So, for now, just Cc: to fuse people.
>
Which ntfs-3g version are you using ?
>> utimensat(0, NULL, {UTIME_OMIT, UTIME_NOW}, 0) = 0
>>
>
Currently ntfs-3g does not set sub-second precision.
There is also a slight problem in the fuse interface :
the time buffer is never passed as NULL, consequently
in some circumstances ntfs-3g cannot decide correctly
over permissions. A permissive action is taken in this
situation.
> > From this, "ia_valid" will have "ATTR_CTIME | ATTR_MTIME". And the
> request would pass to userland via fuse of kernel part, then it will be
> handled by libfuse.
>
> > From quick grep of libfuse and ntfs-3g (would not be latest), ntfs-3g is
> using "struct fuse_operations", not "struct fuse_lowlevel_ops".
>
With the latest ntfs-3g, currently as a release candidate,
you can (optionally) use the low level fuse interface
http://pagesperso-orange.fr/b.andre/advanced-ntfs-3g.html
use the "lowntfs-3g" driver instead of "ntfs-3g"
Hope this helps
Regards
Jean-Pierre
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists