From: Steve Lord <lord@sgi.com>
To: Jan Harkes <jaharkes@cs.cmu.edu>
Cc: Alexander Viro <viro@math.psu.edu>,
"Peter J. Braam" <braam@clusterfs.com>,
Linux Kernel <linux-kernel@vger.kernel.org>
Subject: Re: BIG files & file systems
Date: 02 Aug 2002 09:06:34 -0500 [thread overview]
Message-ID: <1028297194.30192.25.camel@jen.americas.sgi.com> (raw)
In-Reply-To: <20020802135620.GA29534@ravel.coda.cs.cmu.edu>
On Fri, 2002-08-02 at 08:56, Jan Harkes wrote:
>
> I was simply assuming that any filesystem that is using iget5 and
> doesn't use the simpler iget helper has some reason why it cannot find
> an inode given just the 32-bit ino_t.
In XFS's case (remember, the iget5 code is based on XFS changes) it is
more a matter of the code to read the inode sometimes needing to pass
other info down to the read_inode part of the filesystem, so we want to
do that internally. XFS can have 64 bit inode numbers, but you need more
than 1 Tbyte in an fs to get that big (inode numbers are a disk
address). We also have code which keeps them in the bottom 1 Tbyte
which is turned on by default on Linux.
>
> This is definitely true for Coda, we have 96-bit file identifiers.
> Actually my development tree currently uses 128-bit, it is aware of
> multiple administrative realms and distinguishes between objects with
> FID 0x7f000001.0x1.0x1 in different administrative domains. There is a
> hash-function that tries to map these large FIDs into the 32-bit ino_t
> space with as few collisions as possible.
>
> NFS has a >32-bit filehandle. ReiserFS might have unique inodes, but
> seems to need access to the directory to find them. So I don't quickly
> see how it would guarantee uniqueness. NTFS actually doesn't seem to use
> iget5 yet, but it has multiple streams per object which would probably
> end up using the same ino_t.
>
> Userspace applications should either have an option to ignore hardlinks.
> Very large filesystems either don't care because there is plenty of
> space, don't support them across boundaries that are not visible to the
> application, or could be dealing with them them automatically (COW
> links). Besides, if I really have a trillion files, I don't want 'tar
> and friends' to try to keep track of all those inode numbers (and device
> numbers) in memory.
>
> The other solution is that applications can actually use more of the
> information from the inode to avoid confusion, like st_nlink and
> st_mtime, which are useful when the filesystem is still mounted rw as
> well. And to make it even better, st_uid, st_gid, st_size, st_blocks and
> st_ctime, and a MD5/SHA checksum. Although this obviously would become
> even worse for the trillion file backup case.
If apps would have to change then I would vote for allowing larger
inodes out of the kernel in an extended version of stat and getdents.
I was going to say 64 bit versions, but if even 64 is not enough for
you, it is getting a little hard to handle.
Steve
> Jan
--
Steve Lord voice: +1-651-683-3511
Principal Engineer, Filesystem Software email: lord@sgi.com
next prev parent reply other threads:[~2002-08-02 14:11 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-07-31 19:16 Peter J. Braam
2002-07-31 19:26 ` Christoph Hellwig
2002-07-31 20:04 ` Matti Aarnio
2002-07-31 20:12 ` Christoph Hellwig
2002-08-02 17:26 ` Albert D. Cahalan
2002-08-02 22:14 ` Randy.Dunlap
2002-08-03 3:26 ` Albert D. Cahalan
2002-08-06 5:19 ` Andreas Dilger
2002-08-06 7:24 ` Albert D. Cahalan
2002-08-06 7:52 ` Andreas Dilger
2002-08-06 9:28 ` Matti Aarnio
2002-08-05 13:04 ` Stephen Lord
2002-08-05 13:42 ` Hans Reiser
2002-08-05 13:56 ` Randy.Dunlap
2002-08-05 14:21 ` Randy.Dunlap
2002-08-05 17:31 ` Albert D. Cahalan
2002-08-06 0:16 ` jw schultz
2002-08-06 9:48 ` Hans Reiser
2002-07-31 21:07 ` Jan Harkes
2002-07-31 21:13 ` Alexander Viro
2002-08-01 3:51 ` Jan Harkes
2002-08-01 12:01 ` Mark Mielke
2002-08-02 0:09 ` Stephen Lord
2002-08-02 12:17 ` Chris Mason
2002-08-02 12:33 ` Anton Altaparmakov
2002-08-02 13:56 ` Jan Harkes
2002-08-02 14:06 ` Steve Lord [this message]
2002-08-02 15:10 ` Hans Reiser
2002-08-02 15:39 ` Trond Myklebust
2002-08-02 17:01 ` Hans Reiser
2002-08-02 17:25 ` Nikita Danilov
2002-08-02 17:47 ` Trond Myklebust
2002-08-02 18:10 ` Nikita Danilov
2002-08-02 18:31 ` Hans Reiser
2002-08-02 18:48 ` Nikita Danilov
2002-08-02 18:59 ` Hans Reiser
2002-08-01 12:01 ` David Woodhouse
2002-08-01 20:33 ` Andrew Morton
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=1028297194.30192.25.camel@jen.americas.sgi.com \
--to=lord@sgi.com \
--cc=braam@clusterfs.com \
--cc=jaharkes@cs.cmu.edu \
--cc=linux-kernel@vger.kernel.org \
--cc=viro@math.psu.edu \
/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
all inboxes | Powered by JetHome®