Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Aug 2015 22:26:21 +0800
From:      Julian Elischer <julian@freebsd.org>
To:        John Baldwin <jhb@freebsd.org>, freebsd-current@freebsd.org
Cc:        "freebsd-fs@freebsd.org" <freebsd-fs@freebsd.org>, "'Jilles Tjoelker'" <jilles@stack.nl>
Subject:   Re: futimens and utimensat vs birthtime
Message-ID:  <55D09D8D.7010206@freebsd.org>
In-Reply-To: <2405496.WdPSxGzEuT@ralph.baldwin.cx>
References:  <55CDFF32.7050601@freebsd.org> <2405496.WdPSxGzEuT@ralph.baldwin.cx>

next in thread | previous in thread | raw e-mail | index | archive | help
On 8/15/15 1:39 AM, John Baldwin wrote:
> On Friday, August 14, 2015 10:46:10 PM Julian Elischer wrote:
>> I would like to implement this call. but would like input as to it's
>> nature.
>> The code inside the system would already appear to support handling
>> three elements, though it needs some scrutiny,
>> so all that is needed is a system call with the ability to set the
>> birthtime directly.
>>
>> Whether it should take the form of the existing calls but expecting
>> three items is up for discussion.
>> Maybe teh addition of a flags argument to specify which items are
>> present and which to set.
>>
>> ideas?
> I believe these should be new calls.  Only utimensat() provides a flag
> argument, but it is reserved for AT_* flags.
I wasn't suggesting we keep the old ones and silently make them take 3 
args :-)
I was thining of suplementing them wth new syscalls and the obvious 
names are those you suggested.
however I do wonder if there will ever be a need for a 4th...

>   I would be fine with
> something like futimens3() and utimensat3() (where 3 means "three
> timespecs").  Jilles implemented futimens() and utimensat(), so he
> might have ideas as well.  I would probably stick the birth time in
> the third (final) timespec slot to make it easier to update new code
> (you can use an #ifdef just around ts[2] without having to #ifdef the
> entire block).
>




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?55D09D8D.7010206>