(cross posting / reporting upstream from https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=814028 ) Dear Maintainer, /mnt is being mounted as btrfs: mator@deb4g:/srv/1/linux-2.6$ findmnt /mnt TARGET SOURCE FSTYPE OPTIONS /mnt /dev/vdiskd1 btrfs rw,relatime,space_cache,subvolid=5,subvol=/ command "btrfs fi usage /mnt" run as unprivileged user works as expected, but with elevated privileges, it crashes with BUS error: mator@deb4g:/srv/1/linux-2.6$ sudo btrfs fi usage /mnt Bus error since I'm on unstable/sid, getting btrfs-progs from git and trying to reproduce: mator@deb4g:/srv/1$ git clone https://github.com/kdave/btrfs-progs.git mator@deb4g:/srv/1$ cd btrfs-progs && ./autogen.sh && CFLAGS="-g" ./configure && make -j mator@deb4g:/srv/1/btrfs-progs$ ./btrfs --version btrfs-progs v4.4 mator@deb4g:/srv/1/btrfs-progs$ ./btrfs fi usage /mnt WARNING: cannot read detailed chunk info, RAID5/6 numbers will be incorrect, run as root Overall: Device size: 3.00GiB Device allocated: 331.00MiB Device unallocated: 2.67GiB Device missing: 3.00GiB Used: 384.00KiB Free (estimated): 2.68GiB (min: 1.34GiB) Data ratio: 1.00 Metadata ratio: 2.00 Global reserve: 16.00MiB (used: 0.00B) mator@deb4g:/srv/1/btrfs-progs$ sudo ./btrfs fi usage /mnt Bus error mator@deb4g:/srv/1/btrfs-progs$ sudo -s root@deb4g:/srv/1/btrfs-progs# ulimit -c unlimited root@deb4g:/srv/1/btrfs-progs# ./btrfs fi usage /mnt Bus error (core dumped) root@deb4g:/srv/1/btrfs-progs# gdb -c core Core was generated by `./btrfs fi usage /mnt'. Program terminated with signal SIGUSR1, User defined signal 1. #0 0x0000000000174730 in ?? () (gdb) bt #0 0x0000000000174730 in ?? () Backtrace stopped: previous frame identical to this frame (corrupt stack?) (gdb) (gdb) set args fi usage /mnt (gdb) file ./btrfs Load new symbol table from "./btrfs"? (y or n) y Reading symbols from ./btrfs...done. (gdb) run Starting program: /srv/1/btrfs-progs/btrfs fi usage /mnt BFD: /usr/lib/debug/.build-id/10/2220230fb152bed171674ffb66092972cf0276.debug: unable to initialize decompress status for section .debug_aranges BFD: /usr/lib/debug/.build-id/10/2220230fb152bed171674ffb66092972cf0276.debug: unable to initialize decompress status for section .debug_aranges warning: File "/usr/lib/debug/.build-id/10/2220230fb152bed171674ffb66092972cf0276.debug" has no build-id, file skipped [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/sparc64-linux-gnu/libthread_db.so.1". BFD: /usr/lib/debug/.build-id/27/97a1230a6c622a2d0362aace029b5fda6c3474.debug: unable to initialize decompress status for section .debug_aranges BFD: /usr/lib/debug/.build-id/27/97a1230a6c622a2d0362aace029b5fda6c3474.debug: unable to initialize decompress status for section .debug_aranges warning: File "/usr/lib/debug/.build-id/27/97a1230a6c622a2d0362aace029b5fda6c3474.debug" has no build-id, file skipped Program received signal SIGBUS, Bus error. 0x0000000000174730 in load_chunk_info (fd=3, info_ptr=0x7fefffff0f0, info_count=0x7fefffff0e4) at cmds-fi-usage.c:188 188 off += sh->len; (gdb) bt #0 0x0000000000174730 in load_chunk_info (fd=3, info_ptr=0x7fefffff0f0, info_count=0x7fefffff0e4) at cmds-fi-usage.c:188 #1 0x0000000000175dac in load_chunk_and_device_info (fd=3, chunkinfo=0x7fefffff0f0, chunkcount=0x7fefffff0e4, devinfo=0x7fefffff0e8, devcount=0x7fefffff0e0) at cmds-fi-usage.c:577 #2 0x0000000000177418 in cmd_filesystem_usage (argc=2, argv=0x7fefffff6f8) at cmds-fi-usage.c:961 #3 0x000000000010996c in handle_command_group (grp=0x324560 <filesystem_cmd_group>, argc=2, argv=0x7fefffff6f8) at btrfs.c:135 #4 0x000000000011197c in cmd_filesystem (argc=3, argv=0x7fefffff6f0) at cmds-filesystem.c:1294 #5 0x0000000000109d54 in main (argc=3, argv=0x7fefffff6f0) at btrfs.c:243 (gdb) Thanks.
still valid for kernel 4.5.2 and btrfs-progs 4.5.2 (git b70aa412d77078c2afa3dd4dc40f47206062447d)
almost same backtrace on $ ./btrfs dev usage /mnt root@deb4g:/home/mator/btrfs-progs# gdb -c core GNU gdb (Debian 7.10-1+b1) 7.10 This GDB was configured as "sparc64-linux-gnu". Type "show configuration" for configuration details. [New LWP 78957] Core was generated by `./btrfs dev usage /mnt'. Program terminated with signal SIGUSR1, User defined signal 1. #0 0x00000000001759d4 in ?? () (gdb) set args dev usage /mnt (gdb) file ./btrfs Reading symbols from ./btrfs...done. (gdb) run Starting program: /home/mator/btrfs-progs/btrfs dev usage /mnt Program received signal SIGBUS, Bus error. 0x00000000001759d4 in load_chunk_info (fd=3, info_ptr=0x7fefffff010, info_count=0x7fefffff004) at cmds-fi-usage.c:188 188 off += sh->len; (gdb) bt #0 0x00000000001759d4 in load_chunk_info (fd=3, info_ptr=0x7fefffff010, info_count=0x7fefffff004) at cmds-fi-usage.c:188 #1 0x0000000000177050 in load_chunk_and_device_info (fd=3, chunkinfo=0x7fefffff010, chunkcount=0x7fefffff004, devinfo=0x7fefffff008, devcount=0x7fefffff000) at cmds-fi-usage.c:577 #2 0x00000000001139c0 in _cmd_device_usage (fd=3, path=0x7fefffff8e3 "/mnt", unit_mode=512) at cmds-device.c:514 #3 0x0000000000113cb4 in cmd_device_usage (argc=2, argv=0x7fefffff6c8) at cmds-device.c:560 #4 0x0000000000109c4c in handle_command_group (grp=0x332878 <device_cmd_group>, argc=2, argv=0x7fefffff6c8) at btrfs.c:135 #5 0x0000000000113d80 in cmd_device (argc=3, argv=0x7fefffff6c0) at cmds-device.c:590 #6 0x000000000010a034 in main (argc=3, argv=0x7fefffff6c0) at btrfs.c:243 (gdb)
Fiexed and tested by this patchset http://thread.gmane.org/gmane.comp.file-systems.btrfs/55970 , will be released as btrfs-progs 4.5.3 or 4.6. Thanks.