mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: cascardo@minaslivre.org
To: "Theodore Ts'o" <tytso@mit.edu>,
	"Stephen C. Tweedie" <sct@redhat.com>,
	Andreas Dilger <adilger@clusterfs.com>,
	Takashi Sato <sho@bsd.tnes.nec.co.jp>,
	cmm@us.ibm.com, linux-kernel@vger.kernel.org,
	ext2-devel@lists.sourceforge.net,
	Laurent Vivier <Laurent.Vivier@bull.net>,
	ams@gnu.org, cascardo@minaslivre.org
Subject: Re: [Ext2-devel] [PATCH 1/2] ext2/3: Support 2^32-1 blocks(Kernel)
Date: Sat, 25 Mar 2006 11:51:39 -0300	[thread overview]
Message-ID: <20060325145139.GA5606@cascardo.localdomain> (raw)
In-Reply-To: <20060321183822.GC11447@thunk.org>

[-- Attachment #1: Type: text/plain, Size: 4449 bytes --]

On Tue, Mar 21, 2006 at 01:38:22PM -0500, Theodore Ts'o wrote:
> On Tue, Mar 21, 2006 at 12:05:22PM -0500, Stephen C. Tweedie wrote:
> > > It would also be good to understand what HURD is actually doing with
> > > those other fields (if anything, does it even exist anymore?), since
> > > it is literally holding TB of space unusable on Linux ext3 filesystems
> > > that could better be put to use.  There are i_translator, i_mode_high,
> > > and i_author held hostage by HURD, and I certainly have never seen or
> > > heard of any good description of what they do or if Linux would/could
> > > ever use them, or if HURD could live without them.
> 
> Hurd is definitely using the translator field, and I only recently
> discovered they are using it to point at a disk block where the name
> of the translator program (I'm not 100% sure, but I think it's a
> generic, out-of-band, #! sort of functionality).  I don't know about
> the other fields, but I can find out.
> 
> > If they really are 100% necessary for hurd, it might be that we could
> > relegate them to an xattr.  There's the slight problem of testing,
> > though; does anyone on ext2-devel actually run hurd, ever?
> 
> Relegating them to an xatter would break compatibility with existing
> hurd filesystems.  We could take the arrogant "Linux is the only thing
> that matters", and just screw them, and the net result will probably
> be that Hurd will never implement some of the advanced features we've
> been talking about.  They might not anyways, though.  A real problem
> is that as far as I know, the hurd ext2 developers aren't on the
> ext2-devel mailing list.
> 
> I've cc'ed two people that sent me a request to add some additional
> debugfs functionality to support hurd; maybe they can help by telling
> us whether or not hurd is using i_mode_high and i_author, and whether
> or not hurd has any likelihood of tracking new ext3 features that we
> might add in the future or not.
> 

As AMS has pointed out, the filesystem creator must be set to Hurd for
these inode fields to be used. Since ext2 seems to be the most
supported filesystem on Hurd, most of the ext2 fs used have the fs
creator set to Hurd.

Regarding compatibility, there are plans to support xattr in Hurd and
use them for these fields, translator and author. (I can't recall what
i_mode_high is used for.) With respect to that, I'd appreciate if
there is a recommendation to every ext2 implementation (not only
Linux) that supports xattr, to support gnu.translator and gnu.author
(I'll check about the i_mode_high and post about it asap.). There is a
patch by Roland McGrath for Linux that supports those besides the
reserved fields in case the fs creator is Hurd.

> > > I'm fully in the "the chance of any real problem is vanishingly small"
> > > camp, even though Lustre is one of the few users of large inodes.  The
> > > presence of the COMPAT field would not really be any different than just
> > > changing ext3_new_inode() to make i_extra_isize 16 by default, except to
> > > cause breakage against the older e2fsprogs.
> > 
> > Setting i_extra_isize will break older e2fsprogs anyway, won't it?
> > e2fsck needs to have full knowledge of all fs fields in order to
> > maintain consistency; if it doesn't know about some of the fields whose
> > presence is implied by i_extra_isize, then doesn't it have to abort?
> 
> E2fsprogs previous to e2fsprogs 1.37 ignored i_extra_isize and didn't
> check whether or not the EA's in the inode were valid.  Starting in
> e2fsprogs 1.37, e2fsck understands i_extra_size and in fact does
> validate the EA's in the inode.  If we add new i_extra fields, then
> currently e2fsprogs will ignore them, and that's OK for things like
> the high precision time fields.  But if they are fields where e2fsck
> does need to know about them, then obviously we would need a COMPAT
> feature flag to signal that fact (since e2fsck will refuse to operate
> on a filesystem if ther is a COMPAT feature that it doesn't
> understand.)

Regarding userland tools, it would be wise if they would still support
old format filesystems, including those with fs creator set to
Hurd. That would include supporting the oob block for translator when
counting used/free blocks and other operations like copying a file
using debugfs, for example.

> 
[...]
> 
> 						- Ted

Regards,
Thadeu Cascardo.
--

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

  parent reply	other threads:[~2006-03-25 13:49 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-15 12:39 Takashi Sato
2006-03-15 12:56 ` [Ext2-devel] " Laurent Vivier
2006-03-16  2:19 ` Mingming Cao
2006-03-16 12:11   ` Takashi Sato
2006-03-16 13:53     ` Theodore Ts'o
2006-03-16 18:35     ` Andreas Dilger
2006-03-16 21:26       ` Theodore Ts'o
2006-03-16 22:59         ` Andreas Dilger
2006-03-18 17:07           ` Theodore Ts'o
2006-03-20  6:36             ` Andreas Dilger
2006-03-20 22:38               ` Stephen C. Tweedie
2006-03-20 23:48                 ` Andreas Dilger
2006-03-21 17:05                   ` Stephen C. Tweedie
2006-03-21 18:38                     ` Theodore Ts'o
2006-03-21 19:47                       ` Stephen C. Tweedie
2006-03-21 20:40                         ` Andreas Dilger
2006-03-21 20:16                       ` Alfred M. Szmidt
2006-03-21 23:05                       ` Olivier Galibert
2006-03-21 23:35                         ` Alfred M. Szmidt
2006-03-25 14:51                       ` cascardo [this message]
2006-03-26 16:27                         ` Andreas Dilger
2006-03-27 19:59                           ` Stephen C. Tweedie
2006-03-27 20:36                           ` Alfred M. Szmidt
2006-03-27 19:55                         ` Stephen C. Tweedie
2006-03-27 20:05                           ` Alfred M. Szmidt
2006-03-27 20:40                             ` Stephen C. Tweedie
2006-03-28  0:14                           ` cascardo
2006-03-21 20:26                     ` Andreas Dilger
2006-03-21  4:03                 ` Theodore Ts'o
2006-03-17  9:35       ` Laurent Vivier
2006-03-19  2:20 ` Theodore Ts'o
2006-03-20 10:11   ` Takashi Sato
2006-03-26  3:01     ` Theodore Ts'o
2006-03-26 22:15 Chuck Ebbert

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=20060325145139.GA5606@cascardo.localdomain \
    --to=cascardo@minaslivre.org \
    --cc=Laurent.Vivier@bull.net \
    --cc=adilger@clusterfs.com \
    --cc=ams@gnu.org \
    --cc=cmm@us.ibm.com \
    --cc=ext2-devel@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sct@redhat.com \
    --cc=sho@bsd.tnes.nec.co.jp \
    --cc=tytso@mit.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®