Add a note about ext4's dir_index to the manual

  • Open
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Tobias Geerinckx-Rice
Owner
unassigned
Submitted by
Tobias Geerinckx-Rice
Severity
normal
T
T
Tobias Geerinckx-Rice wrote on 3 Mar 2021 22:08
(name . Bug reports for GNU Guix)(address . bug-guix@gnu.org)
87v9a89c8v.fsf@nckx
Mainly a reminder to myself to do so.

Guix can break ext4, and more than once has, with a inscrutable
error message. We should document it explicitly.


Kind regards,

T G-R
-----BEGIN PGP SIGNATURE-----

iIMEARYKACsWIQT12iAyS4c9C3o4dnINsP+IT1VteQUCYD/6wA0cbWVAdG9iaWFz
LmdyAAoJEA2w/4hPVW153JcA/j7r8JEKYupqu5mjOMfDyazc2H0BPQ51pEaoCNKq
O5Y/AP4ga+C+xpNkaYyd07BOgQDDTz1WZN/Lr9hmxTT7GYLhAA==
=jjLg
-----END PGP SIGNATURE-----

L
L
Ludovic Courtès wrote on 4 Mar 2021 23:01
(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)(address . 46905@debbugs.gnu.org)
87blbymvd5.fsf@gnu.org
Hi!

Tobias Geerinckx-Rice <me@tobias.gr> skribis:

Toggle quote (7 lines)
> Mainly a reminder to myself to do so.
>
> Guix can break ext4, and more than once has, with a inscrutable error
> message. We should document it explicitly.
>
> See <http://logs.guix.gnu.org/guix/2021-03-03.log#220037>.

You wrote:

Toggle snippet (5 lines)
<nckx>OK, that's the culprit (it's common: ext4 has a design flaw in that it hashes directory entries and... just
dies when the hash table gets ‘full’). Try ‘tune2fs -E "hash_alg=tea" /dev/foo’ to select a different hash algo, or
‘tune2fs -O "^dir_index" /dev/foo’ to disable it completely if that doesn't help.

Really? I’ve almost always used ‘dir_index’ in my Guix + NixOS days,
and IIRC store accesses were much slower before that was a thing.

On berlin, /gnu is a 37 TiB file system with ‘dir_index’ turned on and
it works well.

I don’t think we can claim there’s a design flaw. WDYT?

Ludo’.
T
T
Tobias Geerinckx-Rice wrote on 4 Mar 2021 23:28
Re: Add a note about ext4's dir_index to the manual
(name . Bug reports for GNU Guix)(address . bug-guix@gnu.org)
87y2f2zh7q.fsf@nckx
Tobias Geerinckx-Rice ???
Toggle quote (2 lines)
> Mainly a reminder to myself to do so.

Update: I did a tiny bit of reading and came across the
‘large_dir’ feature, which (as described) mitigates this problem
somewhat.

Kind regards,

T G-R
-----BEGIN PGP SIGNATURE-----

iIMEARYKACsWIQT12iAyS4c9C3o4dnINsP+IT1VteQUCYEFfGQ0cbWVAdG9iaWFz
LmdyAAoJEA2w/4hPVW15Ai0BAImplwjaC6cjtWLMmClS0uVUb4QjsgpQm7gXpm6w
o2t/AQDTplBMKj/AYCkD7/tKDe76Bpbp+cOJi+lnloLj1MLpDg==
=ojAy
-----END PGP SIGNATURE-----

T
T
Tobias Geerinckx-Rice wrote on 4 Mar 2021 23:38
Re: bug#46905: Add a note about ext4's dir_index to the manual
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 46905@debbugs.gnu.org)
87v9a6zgs1.fsf@nckx
Hi Ludo'!

I should note that later in the IRC convo I corrected my sloppy
‘full’ to ‘hash collision’. Unfortunately it just returns an
already overloaded -ENOSPC to user space.

Ludovic Courtès ???
Toggle quote (3 lines)
> IIRC store accesses were much slower before [dir_index] was a
> thing

Yes, it's a (t)horny dilemma :-/

Toggle quote (2 lines)
> I don’t think we can claim there’s a design flaw. WDYT?

Fine; implementation flaw, then? Problem is, it's not like there
are other implementations than the one we're stuck with, so it
matters little what we call it.

Kind regards,

T G-R
-----BEGIN PGP SIGNATURE-----

iIMEARYKACsWIQT12iAyS4c9C3o4dnINsP+IT1VteQUCYEFhTg0cbWVAdG9iaWFz
LmdyAAoJEA2w/4hPVW15qGwA/iNFJOZBQAujxVuhR0CnKcealtH4U6gNyhEAabRG
tDnbAP9FWMZcR6D5lknP8r+nNbvFE5PyRMBrwdivH48vS18SCQ==
=++CS
-----END PGP SIGNATURE-----

L
L
Ludovic Courtès wrote on 8 Mar 2021 15:26
(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)(address . 46905@debbugs.gnu.org)
87r1kpbu1l.fsf@gnu.org
Hi,

Tobias Geerinckx-Rice <me@tobias.gr> skribis:

Toggle quote (4 lines)
> I should note that later in the IRC convo I corrected my sloppy ‘full’
> to ‘hash collision’. Unfortunately it just returns an already
> overloaded -ENOSPC to user space.

OK, but when do we get ENOSPC, then?

Toggle quote (2 lines)
> Ludovic Courtès ???

[...]

Toggle quote (6 lines)
>> I don’t think we can claim there’s a design flaw. WDYT?
>
> Fine; implementation flaw, then? Problem is, it's not like there are
> other implementations than the one we're stuck with, so it matters
> little what we call it.

My point is that we shouldn’t suggest that ext4 + dir_index is flawed
or unsuitable for Guix use, because we have strong evidence suggesting
otherwise. :-)

Now, I agree that if there are bugs or limitations hit in some
situations, we should document (or fix) them.

WDYT?

Thanks,
Ludo’.
?