From: Linus Torvalds Subject: Re: [PATCH 02/18] xstat: Add a pair of system calls to make extended file stats available [ver #6] Date: Thu, 22 Jul 2010 08:47:46 -0700 Message-ID: References: <20100715021709.5544.64506.stgit@warthog.procyon.org.uk> <20100715021712.5544.44845.stgit@warthog.procyon.org.uk> <30448.1279800887@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Cc: David Howells , Jan Engelhardt , 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-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org To: Volker.Lendecke@sernet.de Return-path: In-Reply-To: Sender: linux-fsdevel-owner@vger.kernel.org List-Id: linux-ext4.vger.kernel.org On Thu, Jul 22, 2010 at 8:36 AM, Volker Lendecke wrote: > > The nice thing about this is also that if this is supposed > to be fully usable for Windows clients, the birthtime needs > to be changeable. That's what NTFS semantics gives you, thus > Windows clients tend to require it. Ok. So it's not really a creation date, exactly the same way ctime isn't at all a creation date. And maybe that actually hints at a better solution: maybe a better model is to create a new per-thread flag that says "do ctime updates the way windows does them". So instead of adding another "btime" - which isn't actually what even windows does - just admit that the _real_ issue is that Unix and Windows semantics are different for the pre-existing "ctime". The fact is, windows has "access time", "modification time" and "creation time" _exactly_ like UNIX. It's just that the ctime has slightly different semantics in windows vs unix. So quite frankly, it's totally insane to introduce a "birthtime", when that isn't even what windows wants, just because people cannot face the actual real difference. Tell me why we shouldn't just do this right? Linus