From owner-freebsd-current@freebsd.org Sun Aug 16 19:05:08 2015 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 98DC49BB131; Sun, 16 Aug 2015 19:05:08 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-io0-x231.google.com (mail-io0-x231.google.com [IPv6:2607:f8b0:4001:c06::231]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 654D3122D; Sun, 16 Aug 2015 19:05:08 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by iods203 with SMTP id s203so130498011iod.0; Sun, 16 Aug 2015 12:05:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=88ayhWhIF0YZT9e4+DNF98kbR3zI2uORDVc52QQPVkE=; b=ruU4zGelYjY+yJ+dqkamWeHWsZFpIZIxDXXA8zpbwlCJyfF+NGRahnEml17sjpDQZT JeOEJ5fCZUGcUygcxmmiGgvxi8d9OJ97iNjSzQ218GgIpBkVer0/LxFC7qwDb0a+WW7g DTeRUS9JN0XXo8M4NQgAZPGvngffxHlwG/KGDITXN7NL5m6fkS4eWoEYrcUgWXmokMBf xh0qZ1SGM9G9fibyJ1sprjf/8pUm7lo7mVHRHt2ERJM/UkFtYPKwwX30Ghw9a41bJAd7 VqDIGXlxRk1FLT2OnAGKfMe66s14E0jafqLkOymwFrF2XE8EZ8bRa5bB8wm9z4jcn1nW wvrQ== MIME-Version: 1.0 X-Received: by 10.107.131.196 with SMTP id n65mr15007669ioi.75.1439751907638; Sun, 16 Aug 2015 12:05:07 -0700 (PDT) Received: by 10.36.38.133 with HTTP; Sun, 16 Aug 2015 12:05:07 -0700 (PDT) In-Reply-To: <55D09D8D.7010206@freebsd.org> References: <55CDFF32.7050601@freebsd.org> <2405496.WdPSxGzEuT@ralph.baldwin.cx> <55D09D8D.7010206@freebsd.org> Date: Sun, 16 Aug 2015 12:05:07 -0700 Message-ID: Subject: Re: futimens and utimensat vs birthtime From: Adrian Chadd To: Julian Elischer Cc: John Baldwin , freebsd-current , "freebsd-fs@freebsd.org" , Jilles Tjoelker Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Aug 2015 19:05:08 -0000 .. then make it take a struct and a type flag. :P Then you can extend it however you'd like. -adrian On 16 August 2015 at 07:26, Julian Elischer wrote: > 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). >> > > _______________________________________________ > freebsd-current@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"