Re: what is our answer to ZFS?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Chris Adams wrote:
Once upon a time, Alan Cox <[email protected]> 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 ([email protected])
"The secret to procrastination is to put things off until the
 last possible moment - but no longer"  -me

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux