Samuel Thibault, le dim. 01 mars 2026 20:10:33 +0100, a ecrit:
> Milos Nikic, le ven. 27 févr. 2026 12:09:28 -0800, a ecrit:
> > This new assert SHOULD fail and if it does it will give us the info needed
> > to
> > fix the problem.
>
> > ---
> > libdiskfs/name-cache.c | 6 +++++-
> > 1 file changed, 5 insertions(+), 1 deletion(-)
> >
> > diff --git a/libdiskfs/name-cache.c b/libdiskfs/name-cache.c
> > index 99591754..7a84fdb3 100644
> > --- a/libdiskfs/name-cache.c
> > +++ b/libdiskfs/name-cache.c
> > @@ -197,7 +197,11 @@ diskfs_enter_lookup_cache (struct node *dir, struct
> > node *np, const char *name)
> > add_entry (bucket, i, name, key, dir->cache_id, value);
> > else
> > if (bucket->node_cache_id[i] != value)
> > - bucket->node_cache_id[i] = value;
> > + {
> > + /* DO NOT MERGE: Catch threads clobbering valid entries with negative
> > ones */
> > + assert_backtrace (!(value == 0 && bucket->node_cache_id[i] != 0));
> > + bucket->node_cache_id[i] = value;
>
> Ok, I see. I have installed it and will see what we get with building
> large packages (gcc also had the same kind of issue).
No need for a large package, the buildd got the issue again. I got a
closer look:
$ ls -l
~/build/chroot-unstable/usr/lib/haskell-packages/ghc/lib/x86_64-hurd-ghc-9.10.3-bf23/blaze-html-0.9.2.0-Jz5lUDpdotoDoDIwOatFss/Text/Blaze
total 8
drwxr-xr-x 5 root root 8192 Mar 2 12:06 XHtml1
$ cd
~/build/chroot-unstable/usr/lib/haskell-packages/ghc/lib/x86_64-hurd-ghc-9.10.3-bf23/blaze-html-0.9.2.0-Jz5lUDpdotoDoDIwOatFss/Text/Blaze/XHtml1
-bash: cd:
/home/buildd/build/chroot-unstable/usr/lib/haskell-packages/ghc/lib/x86_64-hurd-ghc-9.10.3-bf23/blaze-html-0.9.2.0-Jz5lUDpdotoDoDIwOatFss/Text/Blaze/XHtml1:
No such file or directory
$ ls -l
~/build/chroot-unstable/usr/lib/haskell-packages/ghc/lib/x86_64-hurd-ghc-9.10.3-bf23/blaze-html-0.9.2.0-Jz5lUDpdotoDoDIwOatFss/Text/Blaze/XHtml1
ls: reading directory
'/home/buildd/build/chroot-unstable/usr/lib/haskell-packages/ghc/lib/x86_64-hurd-ghc-9.10.3-bf23/blaze-html-0.9.2.0-Jz5lUDpdotoDoDIwOatFss/Text/Blaze/XHtml1':
Input/output error
After reboot:
$ ls -l
~/build/chroot-unstable/usr/lib/haskell-packages/ghc/lib/x86_64-hurd-ghc-9.10.3-bf23/blaze-html-0.9.2.0-Jz5lUDpdotoDoDIwOatFss/Text/Blaze
total 8
drwxr-xr-x 5 root root 8192 Mar 2 12:06 XHtml1
$ cd
~/build/chroot-unstable/usr/lib/haskell-packages/ghc/lib/x86_64-hurd-ghc-9.10.3-bf23/blaze-html-0.9.2.0-Jz5lUDpdotoDoDIwOatFss/Text/Blaze/XHtml1
-bash: cd:
/home/buildd/build/chroot-unstable/usr/lib/haskell-packages/ghc/lib/x86_64-hurd-ghc-9.10.3-bf23/blaze-html-0.9.2.0-Jz5lUDpdotoDoDIwOatFss/Text/Blaze/XHtml1:
No such file or directory
$ ls -l
~/build/chroot-unstable/usr/lib/haskell-packages/ghc/lib/x86_64-hurd-ghc-9.10.3-bf23/blaze-html-0.9.2.0-Jz5lUDpdotoDoDIwOatFss/Text/Blaze/XHtml1
[hangs]
gdb shows that ext2fs is stuck inside count_dirents because le16toh
(entry->rec_len) == 0, I had already seen that before, so had commited a
check against it, but hadn't included it in my build. I'll add it, and
also put some warnings along returning -EIO.
Samuel