The du command core dumps in leave_dir() due to xfs filesystem corruption
Issue
- The
ducommand core dumps inleave_dir()function when it hits a corruption in XFS file system with the following stack trace:
(gdb) bt
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1 0x00007f3ea136ce05 in __GI_abort () at abort.c:79
#2 0x00005620edb7513c in leave_dir (fts=<optimized out>, fts=<optimized out>, ent=<optimized out>)
at ../lib/fts-cycle.c:136
#3 leave_dir (ent=<optimized out>, fts=<optimized out>, fts=<optimized out>) at ../lib/fts-cycle.c:125
#4 0x00005620edb81b4f in fts_build (sp=sp@entry=0x5620eeba1770, type=type@entry=3) at ../lib/fts.c:1388
#5 0x00005620edb82649 in fts_read (sp=0x5620eeba1770) at ../lib/fts.c:966
#6 0x00005620edb758c4 in du_files (files=0x5620edd8b0d0 <temp_argv>, bit_flags=280) at ../src/du.c:690
#7 main (argc=<optimized out>, argv=<optimized out>) at ../src/du.c:1122
(gdb) f 2
#2 0x00005620edb7513c in leave_dir (fts=<optimized out>, fts=<optimized out>, ent=<optimized out>)
at ../lib/fts-cycle.c:136
136 abort ();
Environment
- Red Hat Enterprise Linux 8
- Ceph RBD
- XFS
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.