Package: coreutils;
To reply to this bug, email your comments to 59821 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-coreutils <at> gnu.org
:bug#59821
; Package coreutils
.
(Sun, 04 Dec 2022 18:08:02 GMT) Full text and rfc822 format available.Luke Dashjr <luke <at> dashjr.org>
:bug-coreutils <at> gnu.org
.
Your message had a Version: pseudo-header with an invalid package version:
sys-apps/coreutils-9.1-r1 (Gentoo)
please either use found or fixed to the control server with a correct version, or reply to this report indicating the correct version so the maintainer (or someone else) can correct it for you.
(Sun, 04 Dec 2022 18:08:02 GMT) Full text and rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Luke Dashjr <luke <at> dashjr.org> To: bug-coreutils <at> gnu.org Subject: 9.1: du Aborted (corrupt filesystem) Date: Sun, 4 Dec 2022 18:07:33 +0000
Version: sys-apps/coreutils-9.1-r1 (Gentoo) Context: Linux has a long-standing bug which leads to ext4 RAM dishs (zram specifically) getting corrupted randomly. This manifests as various newfstatat calls returning -1 errno=EUCLEAN (Structure needs cleaning). The `du` tool, when it encounters them, prints an error as expected, but later on aborts at: #4 0x00007ffff7d4d3dc in __GI_abort () at abort.c:79 #5 0x000000010000ba08 in leave_dir (fts=fts <at> entry=0x100042680, ent=ent <at> entry=0x100071630) at lib/fts-cycle.c:136 #6 0x000000010000bd00 in fts_build (sp=sp <at> entry=0x100042680, type=type <at> entry=3) at lib/fts.c:1326 #7 0x000000010000ce7c in rpl_fts_read (sp=0x100042680) at lib/fts.c:925 #8 0x0000000100004864 in du_files (files=<optimized out>, bit_flags=<optimized out>) at src/du.c:691 #9 0x0000000100005cfc in main (argc=<optimized out>, argv=<optimized out>) at src/du.c:1123 (I am not certain if the fstatat return value is related to the later abort, because I couldn't find a way to get gdb to break only when fstatat returns nonzero) Luke
bug-coreutils <at> gnu.org
:bug#59821
; Package coreutils
.
(Mon, 05 Dec 2022 08:40:02 GMT) Full text and rfc822 format available.Message #8 received at 59821 <at> debbugs.gnu.org (full text, mbox):
From: Sam James <sam <at> gentoo.org> To: Luke Dashjr <luke <at> dashjr.org> Cc: 59821 <at> debbugs.gnu.org Subject: Re: bug#59821: 9.1: du Aborted (corrupt filesystem) Date: Mon, 5 Dec 2022 08:39:11 +0000
[Message part 1 (text/plain, inline)]
> On 4 Dec 2022, at 18:07, Luke Dashjr <luke <at> dashjr.org> wrote: > > Version: sys-apps/coreutils-9.1-r1 (Gentoo) > > Context: Linux has a long-standing bug which leads to ext4 RAM dishs (zram > specifically) getting corrupted randomly. This manifests as various > newfstatat calls returning -1 errno=EUCLEAN (Structure needs cleaning). > > The `du` tool, when it encounters them, prints an error as expected, but later > on aborts at: > #4 0x00007ffff7d4d3dc in __GI_abort () at abort.c:79 > #5 0x000000010000ba08 in leave_dir (fts=fts <at> entry=0x100042680, > ent=ent <at> entry=0x100071630) > at lib/fts-cycle.c:136 > #6 0x000000010000bd00 in fts_build (sp=sp <at> entry=0x100042680, > type=type <at> entry=3) at lib/fts.c:1326 > #7 0x000000010000ce7c in rpl_fts_read (sp=0x100042680) at lib/fts.c:925 > #8 0x0000000100004864 in du_files (files=<optimized out>, > bit_flags=<optimized out>) at src/du.c:691 > #9 0x0000000100005cfc in main (argc=<optimized out>, argv=<optimized out>) at > src/du.c:1123 > > (I am not certain if the fstatat return value is related to the later abort, > because I couldn't find a way to get gdb to break only when fstatat returns > nonzero) I may well be missing something, but shouldn't you be reporting this to the kernel folks instead? Or are you saying you want du to give you a nicer error message?
[signature.asc (application/pgp-signature, attachment)]
bug-coreutils <at> gnu.org
:bug#59821
; Package coreutils
.
(Mon, 05 Dec 2022 09:49:02 GMT) Full text and rfc822 format available.Message #11 received at 59821 <at> debbugs.gnu.org (full text, mbox):
From: Luke Dashjr <luke <at> dashjr.org> To: Sam James <sam <at> gentoo.org> Cc: 59821 <at> debbugs.gnu.org Subject: Re: bug#59821: 9.1: du Aborted (corrupt filesystem) Date: Mon, 5 Dec 2022 09:47:43 +0000
On Monday 05 December 2022 08:39:11 Sam James wrote: > > On 4 Dec 2022, at 18:07, Luke Dashjr <luke <at> dashjr.org> wrote: > > > > Version: sys-apps/coreutils-9.1-r1 (Gentoo) > > > > Context: Linux has a long-standing bug which leads to ext4 RAM dishs > > (zram specifically) getting corrupted randomly. This manifests as various > > newfstatat calls returning -1 errno=EUCLEAN (Structure needs cleaning). > > > > The `du` tool, when it encounters them, prints an error as expected, but > > later on aborts at: > > #4 0x00007ffff7d4d3dc in __GI_abort () at abort.c:79 > > #5 0x000000010000ba08 in leave_dir (fts=fts <at> entry=0x100042680, > > ent=ent <at> entry=0x100071630) > > at lib/fts-cycle.c:136 > > #6 0x000000010000bd00 in fts_build (sp=sp <at> entry=0x100042680, > > type=type <at> entry=3) at lib/fts.c:1326 > > #7 0x000000010000ce7c in rpl_fts_read (sp=0x100042680) at lib/fts.c:925 > > #8 0x0000000100004864 in du_files (files=<optimized out>, > > bit_flags=<optimized out>) at src/du.c:691 > > #9 0x0000000100005cfc in main (argc=<optimized out>, argv=<optimized > > out>) at src/du.c:1123 > > > > (I am not certain if the fstatat return value is related to the later > > abort, because I couldn't find a way to get gdb to break only when > > fstatat returns nonzero) > > I may well be missing something, but shouldn't you be reporting this to the > kernel folks instead? Did that in February: https://bugzilla.kernel.org/show_bug.cgi?id=215557 > Or are you saying you want du to give you a nicer error message? I would like du to continue doing what it's doing, so I can still find the larger directories. :) Luke
bug-coreutils <at> gnu.org
:bug#59821
; Package coreutils
.
(Tue, 06 Dec 2022 19:10:01 GMT) Full text and rfc822 format available.Message #14 received at 59821 <at> debbugs.gnu.org (full text, mbox):
From: Paul Eggert <eggert <at> cs.ucla.edu> To: Luke Dashjr <luke <at> dashjr.org> Cc: 59821 <at> debbugs.gnu.org Subject: Re: bug#59821: 9.1: du Aborted (corrupt filesystem) Date: Tue, 6 Dec 2022 11:08:57 -0800
On 2022-12-04 10:07, Luke Dashjr wrote: > Version: sys-apps/coreutils-9.1-r1 (Gentoo) > > Context: Linux has a long-standing bug which leads to ext4 RAM dishs (zram > specifically) getting corrupted randomly. This manifests as various > newfstatat calls returning -1 errno=EUCLEAN (Structure needs cleaning). > > The `du` tool, when it encounters them, prints an error as expected, but later > on aborts... > > (I am not certain if the fstatat return value is related to the later abort, > because I couldn't find a way to get gdb to break only when fstatat returns > nonzero) Thanks, your diagnosis looks like it's on the right track. I attempted to fix the bug that leads to the abort by installing the following patch into Gnulib: https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=440b528b1d81dd31b2a2e4dde20d5c837c147811 and then propagating that into coreutils so that this should appear in the next coreutils release. Although this patch fixes two obvious bugs in the area, I can't easily test the patch in your situation, so please give it a try.
bug-coreutils <at> gnu.org
:bug#59821
; Package coreutils
.
(Tue, 06 Dec 2022 23:43:02 GMT) Full text and rfc822 format available.Message #17 received at 59821 <at> debbugs.gnu.org (full text, mbox):
From: Luke Dashjr <luke <at> dashjr.org> To: Paul Eggert <eggert <at> cs.ucla.edu> Cc: 59821 <at> debbugs.gnu.org Subject: Re: bug#59821: 9.1: du Aborted (corrupt filesystem) Date: Tue, 6 Dec 2022 23:41:16 +0000
On Tuesday 06 December 2022 19:08:57 Paul Eggert wrote: > On 2022-12-04 10:07, Luke Dashjr wrote: > > Version: sys-apps/coreutils-9.1-r1 (Gentoo) > > > > Context: Linux has a long-standing bug which leads to ext4 RAM dishs > > (zram specifically) getting corrupted randomly. This manifests as various > > newfstatat calls returning -1 errno=EUCLEAN (Structure needs cleaning). > > > > The `du` tool, when it encounters them, prints an error as expected, but > > later on aborts... > > > > (I am not certain if the fstatat return value is related to the later > > abort, because I couldn't find a way to get gdb to break only when > > fstatat returns nonzero) > > Thanks, your diagnosis looks like it's on the right track. I attempted > to fix the bug that leads to the abort by installing the following patch > into Gnulib: > > https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=440b528b1d81dd31b2a >2e4dde20d5c837c147811 > > and then propagating that into coreutils so that this should appear in > the next coreutils release. Although this patch fixes two obvious bugs > in the area, I can't easily test the patch in your situation, so please > give it a try. Unfortunately, it does not appear to fix the bug. I have reduced the test case to a single directory, which interestingly does not appear to trigger the EUCLEAN error at all (though I expect it would soon, had du not aborted). Here's a full strace (hopefully enough to reproduce): execve("./du", ["./du", "/tmp/bitcoin_func_test_m00g94yx/"...], 0x7fffe2b3c430 /* 54 vars */) = 0 brk(NULL) = 0x12bb30000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=145836, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 145836, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fff93360000 close(3) = 0 openat(AT_FDCWD, "/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0\25\0\1\0\0\0\214\322\2\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=2307000, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 2396704, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fff93110000 mmap(0x7fff93340000, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x220000) = 0x7fff93340000 close(3) = 0 set_tid_address(0x7fff93402f10) = 57893 set_robust_list(0x7fff93402f20, 24) = 0 rseq(0x7fff934035e0, 0x20, 0, 0xfe5000b) = 0 mprotect(0x7fff93340000, 65536, PROT_READ) = 0 mprotect(0x100d60000, 65536, PROT_READ) = 0 mprotect(0x7fff933f0000, 65536, PROT_READ) = 0 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0 munmap(0x7fff93360000, 145836) = 0 getrandom("\x16\x55\x93\x1c\xf3\xba\xcc\x11", 8, GRND_NONBLOCK) = 8 brk(NULL) = 0x12bb30000 brk(0x12bb60000) = 0x12bb60000 openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3 newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=7408528, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 7408528, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fff929f0000 close(3) = 0 newfstatat(AT_FDCWD, "/tmp/bitcoin_func_test_m00g94yx/node2/regtest/", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0 openat(AT_FDCWD, "/tmp/bitcoin_func_test_m00g94yx/node2/regtest/", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_NOFOLLOW|O_CLOEXEC|O_DIRECTORY) = 3 newfstatat(3, "", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_EMPTY_PATH) = 0 fcntl(3, F_GETFL) = 0x1c800 (flags O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_NOFOLLOW|O_DIRECTORY) fcntl(3, F_SETFD, FD_CLOEXEC) = 0 newfstatat(3, "", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_EMPTY_PATH) = 0 fstatfs64(3, 120, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=16113571, f_bfree=10323875, f_bavail=10319779, f_files=4096000, f_ffree=4069261, f_fsid={val=[0x53d01241, 0x5136a981]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID}) = 0 fcntl(3, F_DUPFD_CLOEXEC, 3) = 4 getdents64(3, 0x12bb34170 /* 3 entries */, 32768) = 80 getdents64(3, 0x12bb34170 /* 0 entries */, 32768) = 0 close(3) = 0 newfstatat(4, "banlist.json", {st_mode=S_IFDIR|0700, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0 openat(4, "banlist.json", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_NOFOLLOW|O_CLOEXEC|O_DIRECTORY) = 3 newfstatat(3, "", {st_mode=S_IFDIR|0700, st_size=4096, ...}, AT_EMPTY_PATH) = 0 fcntl(3, F_GETFL) = 0x1c800 (flags O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_NOFOLLOW|O_DIRECTORY) fcntl(3, F_SETFD, FD_CLOEXEC) = 0 rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0 gettid() = 57893 getpid() = 57893 tgkill(57893, 57893, SIGABRT) = 0 --- SIGABRT {si_signo=SIGABRT, si_code=SI_TKILL, si_pid=57893, si_uid=0} --- +++ killed by SIGABRT +++ Aborted
bug-coreutils <at> gnu.org
:bug#59821
; Package coreutils
.
(Wed, 07 Dec 2022 00:36:02 GMT) Full text and rfc822 format available.Message #20 received at 59821 <at> debbugs.gnu.org (full text, mbox):
From: Paul Eggert <eggert <at> cs.ucla.edu> To: Luke Dashjr <luke <at> dashjr.org> Cc: 59821 <at> debbugs.gnu.org Subject: Re: bug#59821: 9.1: du Aborted (corrupt filesystem) Date: Tue, 6 Dec 2022 16:35:17 -0800
I don't see any failures in stat-like syscalls there, so it looks like at least the bug you mentioned has mutated (even if it hasn't been fixed...). Who's calling 'abort' and why? You can use GDB to find out.
bug-coreutils <at> gnu.org
:bug#59821
; Package coreutils
.
(Wed, 07 Dec 2022 01:03:02 GMT) Full text and rfc822 format available.Message #23 received at 59821 <at> debbugs.gnu.org (full text, mbox):
From: Luke Dashjr <luke <at> dashjr.org> To: Paul Eggert <eggert <at> cs.ucla.edu> Cc: 59821 <at> debbugs.gnu.org Subject: Re: bug#59821: 9.1: du Aborted (corrupt filesystem) Date: Wed, 7 Dec 2022 01:02:34 +0000
On Wednesday 07 December 2022 00:35:17 Paul Eggert wrote: > Who's calling 'abort' and why? You can use GDB to find out. That was the stack trace in the original report ;) Here's a `bt full`: #0 0x00007ffff7dab80c in __pthread_kill_implementation (threadid=<optimized out>, signo=<optimized out>, no_tid=no_tid <at> entry=0) at pthread_kill.c:43 r4 = 53233 r7 = 140737352081264 _arg2 = 53233 r5 = 6 r8 = -8070450532205924301 _arg3 = 6 r0 = 250 r3 = 0 r6 = 16384 _arg1 = 0 tid = 53233 ret = <optimized out> pd = <optimized out> old_mask = {__val = {0, 0, 0, 0, 140737354077752, 140737488347360, 1, 140737354076848, 252833149, 4294971471, 1, 140737354081904, 0, 140737488347536, 140737354077752, 140737488347504}} ret = <optimized out> #1 0x00007ffff7dab8fc in __pthread_kill_internal (threadid=<optimized out>, signo=<optimized out>) at pthread_kill.c:78 No locals. #2 0x00007ffff7dab93c in __GI___pthread_kill (threadid=<optimized out>, signo=<optimized out>) at pthread_kill.c:89 No locals. #3 0x00007ffff7d4b788 in __GI_raise (sig=<optimized out>) at ../sysdeps/posix/raise.c:26 ret = <optimized out> #4 0x00007ffff7d4d3dc in __GI_abort () at abort.c:79 save_stage = 1 act = {__sigaction_handler = {sa_handler = 0x1000, sa_sigaction = 0x1000}, sa_mask = {__val = {4295244672, 1, 4295279392, 4295238880, 264, 280, 0, 4295239296, 4295279392, 140737488347728, 4677086835279805952, 140737353841624, 3, 0, 41, 140737488347680}}, sa_flags = 1, sa_restorer = 0x0} sigs = {__val = {32, 18446744073709551615, 4294975784, 1584, 4294969536, 4295164360, 4294967952, 0, 1320, 140737354076848, 140737488347632, 2, 140737353830380, 140737354104320, 140737351076432, 140737351307904}} #5 0x000000010000ba08 in leave_dir (fts=fts <at> entry=0x100042680, ent=ent <at> entry=0x10004c320) at lib/fts-cycle.c:136 obj = {dev = 64769, ino = 1179668, fts_ent = 0x10004c320} found = <optimized out> st = 0x10004c390 #6 0x000000010000bd00 in fts_build (sp=sp <at> entry=0x100042680, type=type <at> entry=3) at lib/fts.c:1326 p = <optimized out> head = <optimized out> nitems = <optimized out> tail = <optimized out> oldaddr = <optimized out> saved_errno = <optimized out> descend = <optimized out> doadjust = <optimized out> level = <optimized out> len = <optimized out> maxlen = <optimized out> new_len = <optimized out> cp = <optimized out> dir_fd = 3 cur = 0x10004c320 continue_readdir = false sort_by_inode = false max_entries = <optimized out> #7 0x000000010000ce7c in rpl_fts_read (sp=0x100042680) at lib/fts.c:925 p = 0x10004c320 tmp = <optimized out> instr = <optimized out> t = <optimized out> #8 0x0000000100004864 in du_files (files=<optimized out>, bit_flags=<optimized out>) at src/du.c:691 ent = <optimized out> fts = 0x100042680 ok = true #9 0x0000000100005cfc in main (argc=<optimized out>, argv=<optimized out>) at src/du.c:1123 skip_file = <optimized out> ai_err = AI_ERR_OK file_name = 0x7fffffffedbc "/tmp/bitcoin_func_test_m00g94yx/node2/regtest/" cwd_only = {0x100019be0 ".", 0x0} max_depth_specified = <optimized out> ok = true files_from = 0x0 bit_flags = 280 symlink_deref_bits = <optimized out> opt_summarize_only = <optimized out> ai = 0x1000424e0 temp_argv = {0x7fffffffedbc "/tmp/bitcoin_func_test_m00g94yx/node2/regtest/", 0x0} __PRETTY_FUNCTION__ = "main"
bug-coreutils <at> gnu.org
:bug#59821
; Package coreutils
.
(Wed, 07 Dec 2022 02:00:01 GMT) Full text and rfc822 format available.Message #26 received at 59821 <at> debbugs.gnu.org (full text, mbox):
From: Paul Eggert <eggert <at> cs.ucla.edu> To: Luke Dashjr <luke <at> dashjr.org> Cc: 59821 <at> debbugs.gnu.org Subject: Re: bug#59821: 9.1: du Aborted (corrupt filesystem) Date: Tue, 6 Dec 2022 17:59:27 -0800
On 12/6/22 17:02, Luke Dashjr wrote: > That was the stack trace in the original report ;) OK. > newfstatat(4, "banlist.json", {st_mode=S_IFDIR|0700, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0 > openat(4, "banlist.json", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_NOFOLLOW|O_CLOEXEC|O_DIRECTORY) = 3 > newfstatat(3, "", {st_mode=S_IFDIR|0700, st_size=4096, ...}, AT_EMPTY_PATH) = 0 Unfortunately there's not enough info here to see what's going on. Can you redo the trace with 'strace -v' instead of plain 'strace'?
bug-coreutils <at> gnu.org
:bug#59821
; Package coreutils
.
(Wed, 07 Dec 2022 07:59:01 GMT) Full text and rfc822 format available.Message #29 received at 59821 <at> debbugs.gnu.org (full text, mbox):
From: Luke Dashjr <luke <at> dashjr.org> To: Paul Eggert <eggert <at> cs.ucla.edu> Cc: 59821 <at> debbugs.gnu.org Subject: Re: bug#59821: 9.1: du Aborted (corrupt filesystem) Date: Wed, 7 Dec 2022 07:57:37 +0000
On Wednesday 07 December 2022 01:59:27 Paul Eggert wrote: > On 12/6/22 17:02, Luke Dashjr wrote: > > newfstatat(4, "banlist.json", {st_mode=S_IFDIR|0700, st_size=4096, ...}, > > AT_SYMLINK_NOFOLLOW) = 0 openat(4, "banlist.json", > > O_RDONLY|O_NOCTTY|O_NONBLOCK|O_NOFOLLOW|O_CLOEXEC|O_DIRECTORY) = 3 > > newfstatat(3, "", {st_mode=S_IFDIR|0700, st_size=4096, ...}, > > AT_EMPTY_PATH) = 0 > > Unfortunately there's not enough info here to see what's going on. Can > you redo the trace with 'strace -v' instead of plain 'strace'? execve("./du", ["./du", "/tmp/bitcoin_func_test_m00g94yx/node2/regtest/"], ["SHELL=/bin/bash", "COLORTERM=truecolor", "XDG_CONFIG_DIRS=/etc/xdg", "LESS=-R -M --shift 5", "CONFIG_PROTECT_MASK=/etc/sandbox.d /etc/php/cli-php8.0/ext-active/ /etc/php/cgi-php8.0/ext-active/ /etc/php/apache2-php8.0/ext-active/ /etc/php/fpm-php8.0/ext-active/ /etc/php/phpdbg-php8.0/ext-active/ /etc/fonts/fonts.conf /etc/gentoo-release /etc/terminfo /etc/dconf /etc/ca-certificates.conf /etc/revdep-rebuild", "DISTCC_VERBOSE=0", "LANGUAGE=en_GB:en_US", "TERMCAP=SC| screen.xterm-256color|VT 100/ANSI X3.64 virtual terminal:DO=\\E[%dB:LE=\\E[%dD:RI=\\E[%dC:UP=\\E[%dA:bs:bt=\\E[Z:cd=\\E[J:ce=\\E[K:cl=\\E[H\\E[J:cm=\\E[%i%d; %dH:ct=\\E[3g:do=^J:nd=\\E[C:pt:rc=\\E8:rs=\\Ec:sc=\\E7:st=\\EH:up=\\EM:le=^H:bl=^G:cr=^M:it#8:ho=\\E[H:nw=\\EE:ta=^I:is=\\E) 0:li#29:co#114:am:xn:xv:LP:sr=\\EM:al=\\E[L:AL=\\E[%dL:cs=\\E[%i%d; %dr:dl=\\E[M:DL=\\E[%dM:dc=\\E[P:DC=\\E[%dP:im=\\E[4h:ei=\\E[4l:mi:IC=\\E[%d@:ks=\\E[?1h\\E=:ke=\\E[?1l\\E>:vi=\\E[?25l:ve=\\E[34h\\E[?25h:vs=\\E[34l:ti=\\E[?1049h:te=\\E[?1049l:us=\\E[4m:ue=\\E[24m:so=\\E[3m:se=\\E[23m:mb=\\E[5m:md=\\E[1m:mh=\\E[2m:mr=\\E[7m:me=\\E[m:ms:Co#8:pa#64:AF=\\E[3%dm:AB=\\E[4%dm:op=\\E[39;49m:AX:vb=\\Eg:G0:as=\\E(0:ae=\\E(B:ac=\\140\\140aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~..--++,,hhII00:po=\\E[5i:pf=\\E[4i:Z0=\\E[?3h:Z1=\\E[?3l:Km=\\E[<:k0=\\E[10~:k1=\\EOP:k2=\\EOQ:k3=\\EOR:k4=\\EOS:k5=\\E[15~:k6=\\E[17~:k7=\\E[18~:k8=\\E[19~:k9=\\E[20~:k;=\\E[21~:F1=\\E[23~:F2=\\E[24~:kB=\\E[Z:kh=\\E[1~:@1=\\E[1~:kH=\\E[4~:@7=\\E[4~:kN=\\E[6~:kP=\\E[5~:kI=\\E[2~:kD=\\E[3~:ku=\\EOA:kd=\\EOB:kr=\\EOC:kl=\\EOD:km:", "WINDOW=0", "LP_NUM_THREADS=2", "EDITOR=/bin/nano", "PWD=/var/tmp/portage/sys-apps/coreutils-9.1-r1/image/bin", "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt /usr/share/config", "LOGNAME=root", "DISTCC_TCP_CORK=", "MANPATH=/usr/share/gcc-data/powerpc64le-unknown-linux-gnu/11.3.0/man:/usr/share/binutils-data/powerpc64le-unknown-linux-gnu/2.37_p1/man:/usr/lib64/php8.0/man/:/usr/local/share/man:/usr/share/man:/usr/lib/llvm/14/share/man:/usr/lib/llvm/13/share/man", "OPENCL_PROFILE=ocl-icd", "UNCACHED_ERR_FD=", "MOTD_SHOWN=pam", "HOME=/root", "LANG=en_GB.utf8", "LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.cfg=00;32:*.conf=00;32:*.diff=00;32:*.doc=00;32:*.ini=00;32:*.log=00;32:*.patch=00;32:*.pdf=00;32:*.ps=00;32:*.tex=00;32:*.txt=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:", "FLTK_DOCDIR=/usr/share/doc/fltk-1.3.5-r4/html", "OPENGL_PROFILE=xorg-x11", "DISTCC_FALLBACK=1", "DCC_EMAILLOG_WHOM_TO_BLAME=", "SSH_CONNECTION=::1 41000 ::1 22", "QT_GRAPHICSSYSTEM=raster", "INFOPATH=/usr/share/gcc-data/powerpc64le-unknown-linux-gnu/11.3.0/info:/usr/share/binutils-data/powerpc64le-unknown-linux-gnu/2.37_p1/info:/usr/share/info", "TERM=screen.xterm-256color", "LESSOPEN=| lesspipe %s", "USER=root", "MANPAGER=manpager", "SHLVL=2", "DISTCC_SAVE_TEMPS=0", "PAGER=/usr/bin/less", "DISTCC_SSH=", "XSESSION=Plasma", "GCC_SPECS=", "GSETTINGS_BACKEND=dconf", "SSH_CLIENT=::1 41000 22", "LC_TIME=en_CA.UTF-8", "DISTCC_ENABLE_DISCREPANCY_EMAIL=", "LC_COLLATE=C", "XDG_DATA_DIRS=/usr/local/share:/usr/share", "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/lib/llvm/14/bin:/usr/lib/llvm/13/bin", "STY=61872.update", "LV2_PATH=/usr/lib64/lv2", "MAIL=/var/mail/root", "SSH_TTY=/dev/pts/24", "QT_PLUGIN_PATH=/usr/lib64/kde4/plugins", "ETCKEEPER_CONF_DIR=/etc/etckeeper", "OLDPWD=/root", "_=/usr/bin/strace"]) = 0 brk(NULL) = 0x13dce0000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 newfstatat(3, "", {st_dev=makedev(0, 0x15), st_ino=5492817, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=131072, st_blocks=103, st_size=145836, st_atime=1670371980 /* 2022-12-06T19:13:00.111401288-0500 */, st_atime_nsec=111401288, st_mtime=1670112759 /* 2022-12-03T19:12:39.624075564-0500 */, st_mtime_nsec=624075564, st_ctime=1670112759 /* 2022-12-03T19:12:39.634074392-0500 */, st_ctime_nsec=634074392}, AT_EMPTY_PATH) = 0 mmap(NULL, 145836, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fff8dc70000 close(3) = 0 openat(AT_FDCWD, "/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0\25\0\1\0\0\0\214\322\2\0\0\0\0\0@\0\0\0\0\0\0\0\370$#\0\0\0\0\0\2\0\0\0@\08\0\n\0@\0;\0: \0\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0000\2\0\0\0\0\0\0000\2\0\0\0\0\0\0\10\0\0\0\0\0\0\0\3\0\0\0\4\0\0\0p\376\35\0\0\0\0\0p\376\35\0\0\0\0\0p\376\35\0\0\0\0\0\21\0\0\0\0\0\0\0\21\0\0\0\0\0\0\0\10\0\0\0\0\0\0\0\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0h\33\"\0\0\0\0\0h\33\"\0\0\0\0\0\0\0\1\0\0\0\0\0\1\0\0\0\6\0\0\0000\277\"\0\0\0\0\0000\277#\0\0\0\0\0000\277#\0\0\0\0\0\200 [\0\0\0\0\0\0\360\322\0\0\0\0\0\0\0\0\1\0\0\0\0\0\2\0\0\0\6\0\0\0\0\355\"\0\0\0\0\0\0\355#\0\0\0\0\0\0\355#\0\0\0\0\0\0\2\0\0\0\0\0\0\0\2\0\0\0\0\0\0\10\0\0\0\0\0\0\0\4\0\0\0\4\0\0\0p\2\0\0\0\0\0\0p\2\0\0\0\0\0\0p\2\0\0\0\0\0\0 \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\4\0\0\0\0\0\0\0\7\0\0\0\4\0\0\0000\277\"\0\0\0\0\0000\277#\0\0\0\0\0000\277#\0\0\0\0\0\20\0\0\0\0\0\0\0\220\0\0\0\0\0\0\0\10\0\0\0\0\0\0\0P\345td\4\0\0\0\204\376\35\0\0\0\0\0\204\376\35\0\0\0\0\0\204\376\35\0\0\0\0\0D\202\0\0\0\0\0\0D\202\0\0\0\0\0\0\4\0\0\0\0\0\0\0Q\345td\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0R\345td\4\0\0\0000\277\"\0\0\0\0\0000\277#\0\0\0\0\0000\277#\0\0\0\0\0\320@\0\0\0\0\0\0\320@\0\0\0\0\0\0\1\0\0\0\0\0\0\0\4\0\0\0\20\0\0\0\1\0\0\0GNU\0\0\0\0\0\3\0\0\0\n\0\0\0\0\0\0\0\371\3\0\0\25\0\0\0\0\2\0\0\17\0\0\0\10\0\0\25@@\20@\200\1'\2A\v\200\0\202\10\n\200\v\204\0020\10\200\0\r\0\24\200a\21\0\0\4\0\0\0\200\300\2004\204! \34\240\0 (\220\2\4\10 \20\")\20\242\"\fD\200\200\205*\0\200\0P\30 \0\1\0\0@\0\0\0\300\4`@0\4\4\200\312\0\2\0\10\2\2D\t\2\0,D\0\0A\320\4\4\2@@ \0\0\1 \0\0\20\10\200\20\1\200\4\n@\302\200\317\200\322!:\10\10dp\0A\204\0\2\200\4@\0\4\0\20\0\0\0 \6\5\10\0\0", 832) = 832 newfstatat(3, "", {st_dev=makedev(0, 0x15), st_ino=4972456, st_mode=S_IFREG|0755, st_nlink=1, st_uid=0, st_gid=0, st_blksize=131072, st_blocks=2372, st_size=2307000, st_atime=1670356318 /* 2022-12-06T14:51:58.419877390-0500 */, st_atime_nsec=419877390, st_mtime=1659469753 /* 2022-08-02T15:49:13.335300458-0400 */, st_mtime_nsec=335300458, st_ctime=1659469773 /* 2022-08-02T15:49:33.059987847-0400 */, st_ctime_nsec=59987847}, AT_EMPTY_PATH) = 0 mmap(NULL, 2396704, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fff8da20000 mmap(0x7fff8dc50000, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x220000) = 0x7fff8dc50000 close(3) = 0 set_tid_address(0x7fff8dd12f10) = 51015 set_robust_list(0x7fff8dd12f20, 24) = 0 rseq(0x7fff8dd135e0, 0x20, 0, 0xfe5000b) = 0 mprotect(0x7fff8dc50000, 65536, PROT_READ) = 0 mprotect(0x100020000, 65536, PROT_READ) = 0 mprotect(0x7fff8dd00000, 65536, PROT_READ) = 0 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0 munmap(0x7fff8dc70000, 145836) = 0 getrandom("\x2d\x72\x7a\xdd\x13\x06\x20\x9f", 8, GRND_NONBLOCK) = 8 brk(NULL) = 0x13dce0000 brk(0x13dd10000) = 0x13dd10000 openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3 newfstatat(3, "", {st_dev=makedev(0, 0x15), st_ino=4970818, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=131072, st_blocks=7182, st_size=7408528, st_atime=1670356801 /* 2022-12-06T15:00:01.556970659-0500 */, st_atime_nsec=556970659, st_mtime=1659469794 /* 2022-08-02T15:49:54.545468797-0400 */, st_mtime_nsec=545468797, st_ctime=1659469794 /* 2022-08-02T15:49:54.545468797-0400 */, st_ctime_nsec=545468797}, AT_EMPTY_PATH) = 0 mmap(NULL, 7408528, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fff8d300000 close(3) = 0 newfstatat(AT_FDCWD, "/tmp/bitcoin_func_test_m00g94yx/node2/regtest/", {st_dev=makedev(0xfd, 0x1), st_ino=1179698, st_mode=S_IFDIR|0755, st_nlink=2, st_uid=1008, st_gid=1008, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=1670374906 /* 2022-12-06T20:01:46.564969213-0500 */, st_atime_nsec=564969213, st_mtime=1663685833 /* 2022-09-20T10:57:13.226274978-0400 */, st_mtime_nsec=226274978, st_ctime=1663685833 /* 2022-09-20T10:57:13.226274978-0400 */, st_ctime_nsec=226274978}, AT_SYMLINK_NOFOLLOW) = 0 openat(AT_FDCWD, "/tmp/bitcoin_func_test_m00g94yx/node2/regtest/", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_NOFOLLOW|O_CLOEXEC|O_DIRECTORY) = 3 newfstatat(3, "", {st_dev=makedev(0xfd, 0x1), st_ino=1179698, st_mode=S_IFDIR|0755, st_nlink=2, st_uid=1008, st_gid=1008, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=1670374906 /* 2022-12-06T20:01:46.564969213-0500 */, st_atime_nsec=564969213, st_mtime=1663685833 /* 2022-09-20T10:57:13.226274978-0400 */, st_mtime_nsec=226274978, st_ctime=1663685833 /* 2022-09-20T10:57:13.226274978-0400 */, st_ctime_nsec=226274978}, AT_EMPTY_PATH) = 0 fcntl(3, F_GETFL) = 0x1c800 (flags O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_NOFOLLOW|O_DIRECTORY) fcntl(3, F_SETFD, FD_CLOEXEC) = 0 newfstatat(3, "", {st_dev=makedev(0xfd, 0x1), st_ino=1179698, st_mode=S_IFDIR|0755, st_nlink=2, st_uid=1008, st_gid=1008, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=1670374906 /* 2022-12-06T20:01:46.564969213-0500 */, st_atime_nsec=564969213, st_mtime=1663685833 /* 2022-09-20T10:57:13.226274978-0400 */, st_mtime_nsec=226274978, st_ctime=1663685833 /* 2022-09-20T10:57:13.226274978-0400 */, st_ctime_nsec=226274978}, AT_EMPTY_PATH) = 0 fstatfs64(3, 120, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=16113571, f_bfree=10375341, f_bavail=10371245, f_files=4096000, f_ffree=4069261, f_fsid={val=[0x53d01241, 0x5136a981]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID}) = 0 fcntl(3, F_DUPFD_CLOEXEC, 3) = 4 getdents64(3, [{d_ino=1179698, d_off=3802031580503460560, d_reclen=24, d_type=DT_DIR, d_name="."}, {d_ino=1179668, d_off=4580148598467312926, d_reclen=32, d_type=DT_REG, d_name="banlist.json"}, {d_ino=1179692, d_off=9223372036854775807, d_reclen=24, d_type=DT_DIR, d_name=".."}], 32768) = 80 getdents64(3, [], 32768) = 0 close(3) = 0 newfstatat(4, "banlist.json", {st_dev=makedev(0xfd, 0x1), st_ino=1179668, st_mode=S_IFDIR|0700, st_nlink=2, st_uid=1008, st_gid=1008, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=1670369849 /* 2022-12-06T18:37:29.856103830-0500 */, st_atime_nsec=856103830, st_mtime=1663685833 /* 2022-09-20T10:57:13.242273131-0400 */, st_mtime_nsec=242273131, st_ctime=1663685833 /* 2022-09-20T10:57:13.242273131-0400 */, st_ctime_nsec=242273131}, AT_SYMLINK_NOFOLLOW) = 0 openat(4, "banlist.json", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_NOFOLLOW|O_CLOEXEC|O_DIRECTORY) = 3 newfstatat(3, "", {st_dev=makedev(0xfd, 0x1), st_ino=1179668, st_mode=S_IFDIR|0700, st_nlink=2, st_uid=1008, st_gid=1008, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=1670369849 /* 2022-12-06T18:37:29.856103830-0500 */, st_atime_nsec=856103830, st_mtime=1663685833 /* 2022-09-20T10:57:13.242273131-0400 */, st_mtime_nsec=242273131, st_ctime=1663685833 /* 2022-09-20T10:57:13.242273131-0400 */, st_ctime_nsec=242273131}, AT_EMPTY_PATH) = 0 fcntl(3, F_GETFL) = 0x1c800 (flags O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_NOFOLLOW|O_DIRECTORY) fcntl(3, F_SETFD, FD_CLOEXEC) = 0 rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0 gettid() = 51015 getpid() = 51015 tgkill(51015, 51015, SIGABRT) = 0 --- SIGABRT {si_signo=SIGABRT, si_code=SI_TKILL, si_pid=51015, si_uid=0} --- +++ killed by SIGABRT +++ Aborted
bug-coreutils <at> gnu.org
:bug#59821
; Package coreutils
.
(Fri, 09 Dec 2022 23:47:02 GMT) Full text and rfc822 format available.Message #32 received at 59821 <at> debbugs.gnu.org (full text, mbox):
From: Paul Eggert <eggert <at> cs.ucla.edu> To: Luke Dashjr <luke <at> dashjr.org> Cc: 59821 <at> debbugs.gnu.org Subject: Re: bug#59821: 9.1: du Aborted (corrupt filesystem) Date: Fri, 9 Dec 2022 15:46:11 -0800
On 12/6/22 23:57, Luke Dashjr wrote: > getdents64(3, [{d_ino=1179698, d_off=3802031580503460560, d_reclen=24, d_type=DT_DIR, d_name="."}, {d_ino=1179668, d_off=4580148598467312926, > d_reclen=32, d_type=DT_REG, d_name="banlist.json"}, ... This hints at the problem, as it says that "." and its subdirectory "banlist.json" have the same inode number. Still, this glitch in your filesystem shouldn't cause 'du' to abort (it can happen with mounts). Perhaps enabling FTS debugging will help. I committed a change to try to get that working again. Please build by bootstrapping from the latest commit on Savannah, or from the following tarball (which should be equivalent): https://www.cs.ucla.edu/~eggert/coreutils-9.1.104-66ceda.tar.xz Build with -DGNULIB_FTS_DEBUG in your CFLAGS, and then run with fts_debug set to true (either via a debugger, or simply by editing the source code before building so that it is initially true). What is the output of your problematic 'du' in that case?
bug-coreutils <at> gnu.org
:bug#59821
; Package coreutils
.
(Sat, 10 Dec 2022 00:31:01 GMT) Full text and rfc822 format available.Message #35 received at 59821 <at> debbugs.gnu.org (full text, mbox):
From: Luke Dashjr <luke <at> dashjr.org> To: Paul Eggert <eggert <at> cs.ucla.edu> Cc: 59821 <at> debbugs.gnu.org Subject: Re: bug#59821: 9.1: du Aborted (corrupt filesystem) Date: Sat, 10 Dec 2022 00:28:08 +0000
On Friday 09 December 2022 23:46:11 Paul Eggert wrote: > On 12/6/22 23:57, Luke Dashjr wrote: > > getdents64(3, [{d_ino=1179698, d_off=3802031580503460560, d_reclen=24, > > d_type=DT_DIR, d_name="."}, {d_ino=1179668, d_off=4580148598467312926, > > d_reclen=32, d_type=DT_REG, d_name="banlist.json"}, ... > > This hints at the problem, as it says that "." and its subdirectory > "banlist.json" have the same inode number. Still, this glitch in your > filesystem shouldn't cause 'du' to abort (it can happen with mounts). > > Perhaps enabling FTS debugging will help. I committed a change to try to > get that working again. Please build by bootstrapping from the latest > commit on Savannah, or from the following tarball (which should be > equivalent): > > https://www.cs.ucla.edu/~eggert/coreutils-9.1.104-66ceda.tar.xz > > Build with -DGNULIB_FTS_DEBUG in your CFLAGS, and then run with > fts_debug set to true (either via a debugger, or simply by editing the > source code before building so that it is initially true). What is the > output of your problematic 'du' in that case? Unfortunately, my system crashed this morning, and so I can no longer reproduce the issue (short of trying to replay the strace I sent). :/
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.