From: Steve French <smfrench@gmail.com>
To: Andreas Dilger <adilger@sun.com>
Cc: linux-fsdevel <linux-fsdevel@vger.kernel.org>,
samba-technical <samba-technical@lists.samba.org>
Subject: Re: ext4 - getting at birth time (file create time) and getting/setting nanosecond time stamps and utime
Date: Mon, 19 Oct 2009 17:24:04 -0500 [thread overview]
Message-ID: <524f69650910191524k5c9d766fu430c4f7b17d86952@mail.gmail.com> (raw)
In-Reply-To: <5715838A-4568-4273-B1C1-983B348580B6@sun.com>
On Mon, Oct 19, 2009 at 3:11 PM, Andreas Dilger <adilger@sun.com> wrote:
> On 19-Oct-09, at 13:45, Steve French wrote:
>>
>> On Mon, Oct 19, 2009 at 1:55 PM, Andreas Dilger <adilger@sun.com> wrote:
>>>
>>> I had proposed in the past that these file attributes be exposed to
>>> userspace as virtual xattrs, e.g. user.cr_time returning a struct
>>> timespec, but the data is stored internal to the filesystem in whatever
>>> format is most efficient for it. We only strictly need user.crtime
>>> for this, but I wouldn't object to exporting other inode attributes in
>>> this way (e.g. user.mtime, user.atime, etc).
>>
>> Yes - the fake xattr approach was the approach that I preferred
>> (since I could do this trivially to cifs, and for ext4 it seems equally
>> easy),
>> but I wonder if this "path based" approach is slightly harder for Samba,
>> since for most cases Samba maps to "handle based" equivalents
>> (when the same operation can come in eitherpath based or
>> handle based - Samba mostly maps to handle based).
>
> Could you please elaborate what you mean by "path based" for xattrs?
> They can be gotten with sys_fgetxattr() from a file handle just as
> easily as from the filename.
Although handle based interfaces are there for xattrs in userspace,
internally the xattr calls are path based, so handle based
calls get converted to path based in kernel and you could lose
some of the performance benefit - path based could be slightly
slower (due to path revalidation, and access checks) than
handle based calls.
int (*setxattr) (struct dentry *, const char *,const void *,size_t,int);
ssize_t (*getxattr) (struct dentry *, const char *, void *, size_t);
ssize_t (*listxattr) (struct dentry *, char *, size_t);
int (*removexattr) (struct dentry *, const char *);
>
> I definitely agree with having a common attribute name for these.
>
> As for being able to write to the "create time" attribute, I would prefer
> that this be a filesystem mount option. For some users (myself included)
> I don't care whether Windows is unhappy that it can't update this creation
> time - I'd prefer to know when a file is actually created.
I agree - if create time could be overwritten - that behavior hould be
configurable (another post mentioned the alternative to mount
option - a flag for this perhaps along the lines of the a "backup intent"
flag - although somewhat different than what Windows uses that for).
--
Thanks,
Steve
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2009-10-19 22:24 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-19 17:17 ext4 - getting at birth time (file create time) and getting/setting nanosecond time stamps and utime Steve French
2009-10-19 18:55 ` Andreas Dilger
2009-10-19 18:58 ` Jeremy Allison
2009-10-19 19:37 ` Steve French
2009-10-19 19:12 ` Zach Brown
2009-10-19 20:49 ` Jamie Lokier
2009-10-19 19:45 ` Steve French
2009-10-19 20:11 ` Andreas Dilger
2009-10-19 22:24 ` Steve French [this message]
2009-10-19 23:12 ` Andreas Dilger
2009-10-20 3:31 ` Steve French
2009-10-20 12:44 ` jim owens
2009-10-20 20:33 ` Andreas Dilger
2009-10-20 20:49 ` Steve French
2009-10-20 20:59 ` Sunil Mushran
2009-10-20 21:11 ` Steve French
2009-10-20 21:23 ` Sunil Mushran
2009-10-20 21:37 ` Steve French
2009-10-20 21:49 ` Sunil Mushran
2009-10-20 21:56 ` Steve French
2009-10-20 22:16 ` Sunil Mushran
2009-10-21 23:45 ` Mingming
2009-10-21 11:59 ` Henrik Nordstrom
2009-10-21 15:36 ` Steve French
2009-10-21 18:56 ` Brad Boyer
2009-10-21 23:03 ` Björn Jacke
2009-10-22 21:50 ` Steve French
2009-10-21 0:44 ` Andreas Dilger
2009-10-21 23:42 ` Mingming
2009-10-20 21:10 ` jim owens
2009-10-20 0:41 ` Mingming
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=524f69650910191524k5c9d766fu430c4f7b17d86952@mail.gmail.com \
--to=smfrench@gmail.com \
--cc=adilger@sun.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=samba-technical@lists.samba.org \
/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).