public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Neil Brown <neilb@suse.de>
To: Steve French <smfrench@gmail.com>
Cc: Jeremy Allison <jra@samba.org>, Jeff Layton <jlayton@redhat.com>,
	utz lehmann <lkml123@s2y4n2c.de>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Volker.Lendecke@sernet.de, David Howells <dhowells@redhat.com>,
	Jan Engelhardt <jengelh@medozas.de>,
	linux-cifs@vger.kernel.org, linux-nfs@vger.kernel.org,
	samba-technical@lists.samba.org, linux-kernel@vger.kernel.org,
	viro@zeniv.linux.org.uk, linux-fsde@jasper.es
Subject: Re: [PATCH 02/18] xstat: Add a pair of system calls to make extended  file stats available [ver #6]
Date: Sat, 7 Aug 2010 10:29:01 +1000	[thread overview]
Message-ID: <20100807102901.6a0b53e7@notabene> (raw)
In-Reply-To: <AANLkTikDBg5Brt=55Tsu8ozk0aVx=srpxP=U-sFqeBYL@mail.gmail.com>

On Fri, 6 Aug 2010 18:58:42 -0500
Steve French <smfrench@gmail.com> wrote:

> On Fri, Aug 6, 2010 at 6:30 PM, Neil Brown <neilb@suse.de> wrote:
> > On Thu, 5 Aug 2010 22:55:06 -0500
> > Steve French <smfrench@gmail.com> wrote:
> >
> >> On Thu, Aug 5, 2010 at 10:38 PM, Neil Brown <neilb@suse.de> wrote:
> >> > On Thu, 5 Aug 2010 16:52:18 -0700
> >> > Jeremy Allison <jra@samba.org> wrote:
> >>
> >> >> Don't add it as an EA. It's *not* an EA, it's a timestamp.
> >> >
> >> > I'm curious.  Why do you particularly care what interface the kernel uses to
> >> > provide you with access to this attribute?
> >> >
> >> > And given that it is an attribute that is not part of 'POSIX' or "UNIX", it
> >> > would seem to be an extension - an extended attribute.
> >> > As the Linux kernel does virtually nothing with this attribute except provide
> >> > access, it seems to be a very different class of thing to other timestamps.
> >> > Surely it is simply some storage associated with a file which is capable of
> >> > storing a timestamp, which can be set or retrieved by an application, and
> >> > which happens to be initialised to the current time when a file is created.
> >> >
> >> > Yes, to you it is a timestamp.  But to Linux it is a few bytes of
> >> > user-settable metadata.  Sounds like an EA to me.
> >> >
> >> > Or do you really want something like BSD's 'btime' which as I understand it
> >> > cannot be set.  Would that be really useful to you?
> >>
> >> Obviously the cifs and SMB2 protocols which  Samba server support can
> >> ask the server to set the create time of a file (this is handled
> >> through xattrs today along with the "dos attribute" flags such as
> >> archive/hidden/system), but certainly it is much more common (and
> >> important) to read the creation time of an existing file.
> >>
> >
> > Just a point of clarification - when you say it is common and important to be
> > able to read the creation time on an existing file, and you still talking in
> > the context of cifs/smb windows compatibility, or are you talking in the
> > broader context?
> > If you are referring to a broader context could be please give more details
> > because I have not heard any mention of any real value of creation-time out
> > side of window interoperability - have such a use clearly documented would
> > assist the conversation I think.
> >
> > If on the other hand you are just referring the the windows interoperability
> > context ... given that you have to read an EA if the create-time has been
> > changed, you will always have to read and EA so having something else is
> > pointless ... or I'm missing something.
> 
> There are other cases, less common than cifs and smb2.   One
> that comes to mind is NFS version 4, but there are a few other
> cases that I have heard of (backup/archive applications).
> The RFC recommends that servers return attribute 50 (creation
> time).  See below text:
> 
>    time_create         50   nfstime4       R/W      The time of creation
>                                                     of the object.  This
>                                                     attribute does not
>                                                     have any relation to
>                                                     the traditional UNIX
>                                                     file attribute
>                                                     "ctime" or "change
>                                                     time".

I really don't think NFSv4 is a separate justification.  I'm fairly sure
that attribute was only including in NFSv4 for enhanced Windows
compatibility (windows interoperation was a big issue during the protocol
development).

That leaves hypothetical "backup/archive applications".  Do you have a
concrete example?  Or we are left with just various flavours of Windows
compatibility (not that I have a problem with Windows compatibility, but if
that is the only reason that we have creation-time then I think it is
important to be clear and open about that).

NeilBrown

  reply	other threads:[~2010-08-07  0:29 UTC|newest]

Thread overview: 132+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-15  2:17 [PATCH 00/18] Extended file stat functions [ver #6] David Howells
2010-07-15  2:17 ` [PATCH 01/18] Mark arguments to certain syscalls as being const " David Howells
2010-07-15  2:17 ` [PATCH 02/18] xstat: Add a pair of system calls to make extended file stats available " David Howells
2010-07-15 20:35   ` Arnd Bergmann
2010-07-15 21:53     ` David Howells
2010-07-16 10:46       ` Arnd Bergmann
2010-07-16 15:10         ` David Howells
2010-07-16  6:22   ` Mark Harris
2010-07-16 10:24     ` David Howells
2010-07-16 11:02       ` Arnd Bergmann
2010-07-16 12:38         ` David Howells
2010-07-16 13:32           ` Arnd Bergmann
2010-07-17  5:51           ` Mark Harris
2010-07-17  9:00             ` Arnd Bergmann
2010-07-17  9:49             ` David Howells
2010-07-18  8:48   ` Christoph Hellwig
2010-07-19 14:05     ` David Howells
2010-07-22 10:52     ` Jan Engelhardt
2010-07-22 12:25       ` David Howells
2010-07-19 15:17   ` Linus Torvalds
2010-07-19 16:15     ` David Howells
2010-07-19 16:51       ` Linus Torvalds
2010-07-19 17:26         ` David Howells
2010-07-19 17:46           ` Linus Torvalds
2010-07-20  8:28             ` Andreas Dilger
2010-07-22 10:35   ` Jan Engelhardt
2010-07-22 12:14     ` David Howells
2010-07-22 12:17       ` Volker Lendecke
2010-07-22 13:05         ` Jan Engelhardt
2010-07-22 15:14         ` Linus Torvalds
2010-07-22 15:36           ` Volker Lendecke
2010-07-22 15:47             ` Linus Torvalds
2010-07-22 16:06               ` Greg Freemyer
2010-07-22 16:07                 ` Greg Freemyer
2010-07-22 16:25               ` Jan Engelhardt
2010-07-22 16:27               ` Jeremy Allison
2010-07-22 16:40                 ` Linus Torvalds
2010-07-22 16:58                   ` Trond Myklebust
2010-07-22 18:02                     ` Jeremy Allison
2010-07-22 18:04                       ` Volker Lendecke
2010-07-22 18:07                         ` Jeremy Allison
2010-07-22 18:59                         ` Trond Myklebust
2010-07-30 17:55                           ` Phil Pishioneri
2010-07-30 18:11                             ` Trond Myklebust
2010-07-30 18:19                               ` Phil Pishioneri
2010-07-31 18:41                               ` Andreas Dilger
2010-07-31 18:48                                 ` Jan Engelhardt
2010-07-31 19:03                                 ` Trond Myklebust
2010-07-31 21:20                                   ` Jan Engelhardt
2010-08-01 13:17                               ` Jeff Layton
2010-07-22 18:05                       ` Jan Engelhardt
2010-07-22 18:07                         ` Jeremy Allison
2010-07-22 19:18                       ` John Stoffel
2010-07-22 17:03                   ` Jan Engelhardt
2010-07-22 17:16                     ` Trond Myklebust
2010-07-22 17:36                       ` Jan Engelhardt
2010-07-22 17:24                     ` Linus Torvalds
2010-07-22 18:15                       ` Jeremy Allison
2010-07-22 18:21                       ` Benny Halevy
2010-07-22 18:45                         ` Greg Freemyer
2010-07-22 19:53                           ` Benny Halevy
2010-07-22 18:41                       ` Greg Freemyer
2010-07-28  1:15                       ` Neil Brown
2010-07-28 17:28                         ` David Howells
2010-07-28 23:04                           ` Neil Brown
2010-07-29 16:15                             ` David Howells
2010-08-03  1:13                               ` Neil Brown
2010-07-30 18:38                             ` J. Bruce Fields
2010-08-01 13:40                             ` Jeff Layton
2010-08-02 14:09                               ` Greg Freemyer
2010-08-02 14:42                                 ` Jeff Layton
2010-07-22 17:12                   ` Jim Rees
2010-07-22 17:32                     ` Linus Torvalds
2010-07-23  1:03                   ` tridge
2010-07-23  1:21                     ` Ted Ts'o
2010-07-23  2:12                       ` tridge
2010-07-23  9:14                       ` Björn Jacke
2010-07-30 21:22                   ` utz lehmann
2010-07-31  8:08                     ` Jan Engelhardt
2010-07-31 14:43                       ` utz lehmann
2010-07-31 16:53                     ` David Howells
2010-07-31 18:05                       ` utz lehmann
2010-07-31 19:26                         ` David Howells
2010-08-01 13:25                     ` Jeff Layton
2010-08-05 23:52                       ` Jeremy Allison
2010-08-06  3:38                         ` Neil Brown
2010-08-06  3:55                           ` Steve French
2010-08-06 11:18                             ` Jeff Layton
2010-08-06 23:30                             ` Neil Brown
2010-08-06 23:58                               ` Steve French
2010-08-07  0:29                                 ` Neil Brown [this message]
2010-08-07  2:42                                   ` Steve French
2010-08-07  2:54                                     ` Steve French
2010-08-07  3:32                                       ` Neil Brown
2010-08-07 10:34                                         ` Jeff Layton
2010-08-07 11:04                                           ` Neil Brown
2010-08-08 12:12                           ` Jeremy Allison
2010-08-08 12:53                             ` Jeff Layton
2010-08-08 13:05                               ` Jeremy Allison
2010-08-13 12:54                                 ` J. Bruce Fields
2010-08-13 17:54                                   ` Jeremy Allison
2010-08-13 18:09                                     ` Steve French
2010-08-13 19:06                                     ` Jan Engelhardt
2010-08-13 19:19                                       ` Jeremy Allison
2010-08-16 18:04                                         ` J. Bruce Fields
2010-08-16 18:08                                     ` J. Bruce Fields
2010-08-16 19:07                                       ` Jeremy Allison
2010-08-08 23:07                             ` Neil Brown
2010-07-22 15:46           ` Jan Engelhardt
2010-07-22 16:06             ` David Howells
2010-07-15  2:17 ` [PATCH 03/18] AFS: Use i_generation not i_version for the vnode uniquifier " David Howells
2010-07-15  2:17 ` [PATCH 04/18] xstat: AFS: Return extended attributes " David Howells
2010-07-15  2:17 ` [PATCH 05/18] xstat: eCryptFS: " David Howells
2010-07-15  2:17 ` [PATCH 06/18] xstat: Ext4: " David Howells
2010-07-15  2:17 ` [PATCH 07/18] xstat: NFS: " David Howells
2010-07-15  2:17 ` [PATCH 08/18] xstat: CIFS: " David Howells
2010-07-15  2:17 ` [PATCH 09/18] xstat: Make special system filesystems return FS_SPECIAL_FL " David Howells
2010-07-18  8:49   ` Christoph Hellwig
2010-07-19 14:09     ` David Howells
2010-07-27 13:41       ` David Howells
2010-07-15  2:17 ` [PATCH 10/18] xstat: Make network filesystems return FS_REMOTE_FL " David Howells
2010-07-15  2:17 ` [PATCH 11/18] xstat: Make automounter filesystems return FS_AUTOMOUNT_FL " David Howells
2010-07-15  2:17 ` [PATCH 12/18] xstat: Add a dentry op to handle automounting rather than abusing follow_link() " David Howells
2010-07-18  8:50   ` Christoph Hellwig
2010-07-19 14:10     ` David Howells
2010-07-15  2:17 ` [PATCH 13/18] xstat: AFS: Use d_automount() " David Howells
2010-07-15  2:17 ` [PATCH 14/18] xstat: NFS: " David Howells
2010-07-15  2:17 ` [PATCH 15/18] xstat: CIFS: " David Howells
2010-07-15  2:17 ` [PATCH 16/18] xstat: Remove the automount through follow_link() kludge code from pathwalk " David Howells
2010-07-15  2:17 ` [PATCH 17/18] xstat: Add an AT_NO_AUTOMOUNT flag to suppress terminal automount " David Howells
2010-07-15  2:17 ` [PATCH 18/18] xstat: Provide a mechanism to gather extra results for [f]xstat() " David Howells
2010-07-18  8:51   ` Christoph Hellwig

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=20100807102901.6a0b53e7@notabene \
    --to=neilb@suse.de \
    --cc=Volker.Lendecke@sernet.de \
    --cc=dhowells@redhat.com \
    --cc=jengelh@medozas.de \
    --cc=jlayton@redhat.com \
    --cc=jra@samba.org \
    --cc=linux-cifs@vger.kernel.org \
    --cc=linux-fsde@jasper.es \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=lkml123@s2y4n2c.de \
    --cc=samba-technical@lists.samba.org \
    --cc=smfrench@gmail.com \
    --cc=torvalds@linux-foundation.org \
    --cc=viro@zeniv.linux.org.uk \
    /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