From: Bill Davidsen <davidsen@tmr.com>
To: Chris Adams <cmadams@hiwaay.net>
Cc: linux-kernel@vger.kernel.org, alan@lxorguk.ukuu.org.uk
Subject: Re: what is our answer to ZFS?
Date: Tue, 22 Nov 2005 16:19:37 -0500 [thread overview]
Message-ID: <43838B69.8020701@tmr.com> (raw)
In-Reply-To: <20051122195652.GB660478@hiwaay.net>
Chris Adams wrote:
> Once upon a time, Alan Cox <alan@lxorguk.ukuu.org.uk> said:
>
>>It was a nice try but there is a giant gotcha most people forget. Its
>>only safe to make this assumption while you have all of the
>>files/directories in question open.
>
Right, at the time the structures were created removable (in any sense)
media usually meant 1/2 inch mag tape, not block storage. The inode was
pretty well set by SysIII, IIRC.
>
> Tru64 adds a "st_gen" field to struct stat. It is an unsigned int that
> is a "generation" counter for a particular inode. To get a collision
> while creating and removing files, you'd have to remove and create a
> file with the same inode 2^32 times while tar (or whatever) is running.
> Here's what stat(2) says:
>
> Two structure members in <sys/stat.h> uniquely identify a file in a file
> system: st_ino, the file serial number, and st_dev, the device id for the
> directory that contains the file.
>
> [Tru64 UNIX] However, in the rare case when a user application has been
> deleting open files, and a file serial number is reused, a third structure
> member in <sys/stat.h>, the file generation number, is needed to uniquely
> identify a file. This member, st_gen, is used in addition to st_ino and
> st_dev.
>
Shades of VMS! Of course that's not unique, I believe iso9660 (CD) has
versioning which is almost never used.
--
-bill davidsen (davidsen@tmr.com)
"The secret to procrastination is to put things off until the
last possible moment - but no longer" -me
next prev parent reply other threads:[~2005-11-23 15:51 UTC|newest]
Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-11-21 9:28 what is our answer to ZFS? Alfred Brons
2005-11-21 9:44 ` Paulo Jorge Matos
2005-11-21 9:59 ` Alfred Brons
2005-11-21 10:08 ` Bernd Petrovitsch
2005-11-21 10:16 ` Andreas Happe
2005-11-21 11:30 ` Anton Altaparmakov
2005-11-21 10:19 ` Jörn Engel
2005-11-21 11:46 ` Matthias Andree
2005-11-21 12:07 ` Kasper Sandberg
2005-11-21 13:18 ` Matthias Andree
2005-11-21 14:18 ` Kasper Sandberg
2005-11-21 14:41 ` Matthias Andree
2005-11-21 15:08 ` Kasper Sandberg
2005-11-22 8:52 ` Matthias Andree
2005-11-21 22:41 ` Bill Davidsen
2005-11-21 20:48 ` jdow
2005-11-22 11:17 ` Jörn Engel
2005-11-21 11:59 ` Diego Calleja
2005-11-22 7:51 ` Christoph Hellwig
2005-11-22 10:28 ` Jörn Engel
2005-11-22 14:50 ` Theodore Ts'o
2005-11-22 15:25 ` Jan Harkes
2005-11-22 16:17 ` Chris Adams
2005-11-22 16:55 ` Anton Altaparmakov
2005-11-22 17:18 ` Theodore Ts'o
2005-11-22 19:25 ` Anton Altaparmakov
2005-11-22 19:52 ` Theodore Ts'o
2005-11-22 20:00 ` Anton Altaparmakov
2005-11-22 23:02 ` Theodore Ts'o
2005-11-22 21:14 ` Bill Davidsen
2005-11-22 21:06 ` Bill Davidsen
2005-11-22 20:19 ` Alan Cox
2005-11-22 19:56 ` Chris Adams
2005-11-22 21:19 ` Bill Davidsen [this message]
2005-11-23 19:20 ` Generation numbers in stat was Re: what is slashdot's " Andi Kleen
2005-11-24 5:15 ` Chris Adams
2005-11-24 8:47 ` Andi Kleen
2005-11-22 16:28 ` what is our " Theodore Ts'o
2005-11-22 17:37 ` Jan Harkes
2005-11-22 16:36 ` Jeff V. Merkey
2005-11-28 12:53 ` Lars Marowsky-Bree
2005-11-29 5:04 ` Theodore Ts'o
2005-11-29 5:57 ` Willy Tarreau
2005-11-29 14:42 ` John Stoffel
2005-11-29 13:58 ` Andi Kleen
2005-11-29 16:03 ` Chris Adams
2005-11-21 11:45 ` Diego Calleja
2005-11-21 14:19 ` Tarkan Erimer
2005-11-21 18:52 ` Rob Landley
2005-11-21 19:28 ` Diego Calleja
2005-11-21 20:02 ` Bernd Petrovitsch
2005-11-22 5:42 ` Rob Landley
2005-11-22 9:25 ` Matthias Andree
2005-11-21 23:05 ` Bill Davidsen
2005-11-22 0:15 ` Bernd Eckenfels
2005-11-21 22:59 ` Jeff V. Merkey
2005-11-22 7:45 ` Christoph Hellwig
2005-11-22 9:19 ` Jeff V. Merkey
2005-11-22 16:00 ` Bill Davidsen
2005-11-22 16:09 ` Jeff V. Merkey
2005-11-22 20:16 ` Bill Davidsen
2005-11-22 16:14 ` Randy.Dunlap
2005-11-22 16:38 ` Steve Flynn
2005-11-22 7:15 ` Rob Landley
2005-11-22 8:16 ` Bernd Eckenfels
2005-11-22 0:45 ` Pavel Machek
2005-11-22 6:34 ` Rob Landley
2005-11-22 19:05 ` Pavel Machek
2005-11-22 9:20 ` Matthias Andree
2005-11-22 10:00 ` Tarkan Erimer
2005-11-22 15:46 ` Jan Dittmer
2005-11-22 16:27 ` Bill Davidsen
2005-11-21 18:17 ` Rob Landley
-- strict thread matches above, loose matches on Subject: below --
2005-11-24 1:52 art
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=43838B69.8020701@tmr.com \
--to=davidsen@tmr.com \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=cmadams@hiwaay.net \
--cc=linux-kernel@vger.kernel.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