[root@localhost ~]# btrfs check /dev/vdb1 Checking filesystem on /dev/vdb1 UUID: df4ca7c1-3088-499b-82c8-d8175bd70de1 checking extents Aborted (core dumped) [root@localhost ~]# btrfs-image -c9 -t4 /dev/vdb1 chris.btrfs checksum verify failed on 37945344 found C87AFAD1 wanted 00002100 checksum verify failed on 37945344 found C87AFAD1 wanted 00002100 bytenr mismatch, want=37945344, have=553648170 Error reading metadata block Error adding block -5 checksum verify failed on 37945344 found C87AFAD1 wanted 00002100 checksum verify failed on 37945344 found C87AFAD1 wanted 00002100 bytenr mismatch, want=37945344, have=553648170 Error reading metadata block Error flushing pending -5 create failed (Success) The file systems that result in this happen from bug 101191. What I expect to happen is some sort of graceful failure of btrfs check. And btrfs-image should still image the file system to at least some minimal degree that a developer can have a way to improve the repair tools. Sort of a chicken and egg problem maybe.
(gdb) run check /dev/vdb1 Starting program: /usr/sbin/btrfs check /dev/vdb1 [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Checking filesystem on /dev/vdb1 UUID: df4ca7c1-3088-499b-82c8-d8175bd70de1 checking extents Program received signal SIGABRT, Aborted. 0x00007ffff6fb5a98 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55 55 return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig); (gdb) Not sure what else to do in gdb.
[root@localhost ~]# valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes -v btrfs check /dev/vdb1 ==1154== Memcheck, a memory error detector ==1154== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al. ==1154== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info ==1154== Command: btrfs check /dev/vdb1 ==1154== --1154-- Valgrind options: --1154-- --leak-check=full --1154-- --show-leak-kinds=all --1154-- --track-origins=yes --1154-- -v --1154-- Contents of /proc/version: --1154-- Linux version 4.1.0-1.fc23.x86_64+debug (mockbuild@bkernel02.phx2.fedoraproject.org) (gcc version 5.1.1 20150618 (Red Hat 5.1.1-4) (GCC) ) #1 SMP Mon Jun 22 14:53:14 UTC 2015 --1154-- Arch and hwcaps: AMD64, LittleEndian, amd64-cx16-rdtscp-sse3-avx --1154-- Page sizes: currently 4096, max supported 4096 --1154-- Valgrind library directory: /usr/lib64/valgrind --1154-- Reading syms from /usr/sbin/btrfs --1154-- Considering /usr/lib/debug/.build-id/7d/f0e94b43214184725373a7001a560ba7d7bdfe.debug .. --1154-- .. build-id is valid --1154-- Considering /usr/lib/debug/.build-id/7f/1548bbc888da4e4075477b3234b76b62f5ae53.debug .. --1154-- .. build-id is valid --1154-- Warning: cross-CU LIMITATION: some inlined fn names --1154-- might be shown as UnknownInlinedFun --1154-- Reading syms from /usr/lib64/ld-2.21.so --1154-- Considering /usr/lib/debug/.build-id/f3/5b0dd3fcd2d133084bd3a1d37b03e6b9ec688d.debug .. --1154-- .. build-id is valid --1154-- Reading syms from /usr/lib64/valgrind/memcheck-amd64-linux --1154-- object doesn't have a symbol table --1154-- object doesn't have a dynamic symbol table --1154-- Scheduler: using generic scheduler lock implementation. --1154-- Reading suppressions file: /usr/lib64/valgrind/default.supp ==1154== embedded gdbserver: reading from /tmp/vgdb-pipe-from-vgdb-to-1154-by-root-on-localhost.localdomain ==1154== embedded gdbserver: writing to /tmp/vgdb-pipe-to-vgdb-from-1154-by-root-on-localhost.localdomain ==1154== embedded gdbserver: shared mem /tmp/vgdb-pipe-shared-mem-vgdb-1154-by-root-on-localhost.localdomain ==1154== ==1154== TO CONTROL THIS PROCESS USING vgdb (which you probably ==1154== don't want to do, unless you know exactly what you're doing, ==1154== or are doing some strange experiment): ==1154== /usr/lib64/valgrind/../../bin/vgdb --pid=1154 ...command... ==1154== ==1154== TO DEBUG THIS PROCESS USING GDB: start GDB like this ==1154== /path/to/gdb btrfs ==1154== and then give GDB the following command ==1154== target remote | /usr/lib64/valgrind/../../bin/vgdb --pid=1154 ==1154== --pid is optional if only one valgrind process is running ==1154== --1154-- REDIR: 0x4019a60 (ld-linux-x86-64.so.2:strlen) redirected to 0x380c10d1 (???) --1154-- Reading syms from /usr/lib64/valgrind/vgpreload_core-amd64-linux.so --1154-- object doesn't have a symbol table --1154-- Reading syms from /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so --1154-- object doesn't have a symbol table ==1154== WARNING: new redirection conflicts with existing -- ignoring it --1154-- old: 0x04019a60 (strlen ) R-> (0000.0) 0x380c10d1 ??? --1154-- new: 0x04019a60 (strlen ) R-> (2007.0) 0x04c2bca0 strlen --1154-- REDIR: 0x40197c0 (ld-linux-x86-64.so.2:index) redirected to 0x4c2b840 (index) --1154-- REDIR: 0x40199e0 (ld-linux-x86-64.so.2:strcmp) redirected to 0x4c2cd50 (strcmp) --1154-- REDIR: 0x401a720 (ld-linux-x86-64.so.2:mempcpy) redirected to 0x4c2faa0 (mempcpy) --1154-- Reading syms from /usr/lib64/libuuid.so.1.3.0 --1154-- Considering /usr/lib/debug/.build-id/a4/378d87efdbd21f54c028e61c64149e39b3aad2.debug .. --1154-- .. build-id is valid --1154-- Considering /usr/lib/debug/.build-id/02/a388325b2d948a89cdbd96717787478bc6309a.debug .. --1154-- .. build-id is valid --1154-- Reading syms from /usr/lib64/libblkid.so.1.1.0 --1154-- Considering /usr/lib/debug/.build-id/19/8decd48827b4e5f6c102a097697929e6724933.debug .. --1154-- .. build-id is valid --1154-- Considering /usr/lib/debug/.build-id/02/a388325b2d948a89cdbd96717787478bc6309a.debug .. --1154-- .. build-id is valid --1154-- Reading syms from /usr/lib64/libz.so.1.2.8 --1154-- Considering /usr/lib/debug/.build-id/f1/420de60af3d13a8119b2072e00310455eb7fae.debug .. --1154-- .. build-id is valid --1154-- Reading syms from /usr/lib64/liblzo2.so.2.0.0 --1154-- Considering /usr/lib/debug/.build-id/8c/3dec93a196fa54927f7119ec18faf4edc7e09c.debug .. --1154-- .. build-id is valid --1154-- Reading syms from /usr/lib64/libpthread-2.21.so --1154-- Considering /usr/lib/debug/.build-id/d5/15e7040be962bd98df45bbd27f5b80518dff25.debug .. --1154-- .. build-id is valid --1154-- Reading syms from /usr/lib64/libc-2.21.so --1154-- Considering /usr/lib/debug/.build-id/5b/6342ea1dbd25b194e8cb60e7b0133466598b24.debug .. --1154-- .. build-id is valid --1154-- REDIR: 0x595dc70 (libc.so.6:strcasecmp) redirected to 0x4a2372e (_vgnU_ifunc_wrapper) --1154-- REDIR: 0x595ff60 (libc.so.6:strncasecmp) redirected to 0x4a2372e (_vgnU_ifunc_wrapper) --1154-- REDIR: 0x595d3fb (libc.so.6:memcpy@GLIBC_2.2.5) redirected to 0x4a2372e (_vgnU_ifunc_wrapper) --1154-- REDIR: 0x595b6b0 (libc.so.6:rindex) redirected to 0x4c2b520 (rindex) --1154-- REDIR: 0x59599b0 (libc.so.6:strlen) redirected to 0x4c2bbe0 (strlen) --1154-- REDIR: 0x5959dd0 (libc.so.6:strncmp) redirected to 0x4a2372e (_vgnU_ifunc_wrapper) --1154-- REDIR: 0x5a0e880 (libc.so.6:__strncmp_sse42) redirected to 0x4c2c470 (__strncmp_sse42) --1154-- REDIR: 0x59649e0 (libc.so.6:strchrnul) redirected to 0x4c2f5d0 (strchrnul) --1154-- REDIR: 0x5952af0 (libc.so.6:malloc) redirected to 0x4c28b89 (malloc) --1154-- REDIR: 0x5953550 (libc.so.6:calloc) redirected to 0x4c2a8f1 (calloc) --1154-- REDIR: 0x59626b0 (libc.so.6:__GI_memcpy) redirected to 0x4c2d7a0 (__GI_memcpy) --1154-- REDIR: 0x5952e50 (libc.so.6:free) redirected to 0x4c29ca3 (free) --1154-- REDIR: 0x595d620 (libc.so.6:__GI_mempcpy) redirected to 0x4c2f7d0 (__GI_mempcpy) --1154-- REDIR: 0x595c300 (libc.so.6:__GI_strstr) redirected to 0x4c2fd00 (__strstr_sse2) --1154-- REDIR: 0x595cb10 (libc.so.6:memchr) redirected to 0x4c2cdf0 (memchr) --1154-- REDIR: 0x5957d40 (libc.so.6:__GI_strchr) redirected to 0x4c2b680 (__GI_strchr) --1154-- REDIR: 0x59647d0 (libc.so.6:rawmemchr) redirected to 0x4c2f600 (rawmemchr) --1154-- REDIR: 0x595ce60 (libc.so.6:bcmp) redirected to 0x4a2372e (_vgnU_ifunc_wrapper) --1154-- REDIR: 0x5a37220 (libc.so.6:__memcmp_sse4_1) redirected to 0x4c2e850 (__memcmp_sse4_1) --1154-- REDIR: 0x5957f60 (libc.so.6:strcmp) redirected to 0x4a2372e (_vgnU_ifunc_wrapper) --1154-- REDIR: 0x596d8e0 (libc.so.6:__strcmp_sse2_unaligned) redirected to 0x4c2cc10 (strcmp) --1154-- REDIR: 0x5962640 (libc.so.6:memcpy@@GLIBC_2.14) redirected to 0x4a2372e (_vgnU_ifunc_wrapper) --1154-- REDIR: 0x596db90 (libc.so.6:__memcpy_sse2_unaligned) redirected to 0x4c2d140 (memcpy@@GLIBC_2.14) Checking filesystem on /dev/vdb1 UUID: df4ca7c1-3088-499b-82c8-d8175bd70de1 checking extents ==1154== ==1154== Process terminating with default action of signal 6 (SIGABRT) ==1154== at 0x5903A98: raise (raise.c:55) ==1154== by 0x5905729: abort (abort.c:89) ==1154== by 0x422C52: add_tree_backref (cmds-check.c:4416) ==1154== by 0x423257: process_extent_item.isra.27 (cmds-check.c:4979) ==1154== by 0x4258E3: run_next_block.constprop.59 (cmds-check.c:5780) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== HEAP SUMMARY: ==1154== in use at exit: 301,523 bytes in 2,038 blocks ==1154== total heap usage: 2,553 allocs, 515 frees, 530,519 bytes allocated ==1154== ==1154== Searching for pointers to 2,038 not-freed blocks ==1154== Checked 473,296 bytes ==1154== ==1154== 1 bytes in 1 blocks are still reachable in loss record 1 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x5959719: strdup (strdup.c:42) ==1154== by 0x44DB62: device_list_add (volumes.c:125) ==1154== by 0x44DB62: btrfs_scan_one_device (volumes.c:265) ==1154== by 0x453E29: check_mounted_where (utils.c:1339) ==1154== by 0x454188: check_mounted (utils.c:1322) ==1154== by 0x4294A7: cmd_check (cmds-check.c:9284) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 10 bytes in 1 blocks are still reachable in loss record 2 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x5959719: strdup (strdup.c:42) ==1154== by 0x44DB4D: device_list_add (volumes.c:120) ==1154== by 0x44DB4D: btrfs_scan_one_device (volumes.c:265) ==1154== by 0x453E29: check_mounted_where (utils.c:1339) ==1154== by 0x454188: check_mounted (utils.c:1322) ==1154== by 0x4294A7: cmd_check (cmds-check.c:9284) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 48 bytes in 1 blocks are still reachable in loss record 3 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44B7E1: alloc_cache_extent (extent-cache.c:99) ==1154== by 0x44B7E1: __add_cache_extent (extent-cache.c:113) ==1154== by 0x42190F: add_pending (cmds-check.c:4522) ==1154== by 0x426AAB: add_root_to_pending (cmds-check.c:5950) ==1154== by 0x426AAB: deal_root_from_list.constprop.58 (cmds-check.c:7803) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 64 bytes in 2 blocks are possibly lost in loss record 4 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x422C61: alloc_tree_backref (cmds-check.c:4185) ==1154== by 0x422C61: add_tree_backref (cmds-check.c:4426) ==1154== by 0x426B07: add_root_to_pending (cmds-check.c:5961) ==1154== by 0x426B07: deal_root_from_list.constprop.58 (cmds-check.c:7803) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 88 bytes in 1 blocks are still reachable in loss record 5 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x42596B: process_device_item (cmds-check.c:4788) ==1154== by 0x42596B: run_next_block.constprop.59 (cmds-check.c:5794) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 96 bytes in 1 blocks are still reachable in loss record 6 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44DA9E: device_list_add (volumes.c:95) ==1154== by 0x44DA9E: btrfs_scan_one_device (volumes.c:265) ==1154== by 0x453E29: check_mounted_where (utils.c:1339) ==1154== by 0x454188: check_mounted (utils.c:1322) ==1154== by 0x4294A7: cmd_check (cmds-check.c:9284) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 96 bytes in 1 blocks are still reachable in loss record 7 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44FAD3: read_one_chunk (volumes.c:1610) ==1154== by 0x44FF95: btrfs_read_sys_array (volumes.c:1829) ==1154== by 0x43F452: btrfs_setup_chunk_tree_and_device_map (disk-io.c:1159) ==1154== by 0x43F692: __open_ctree_fd (disk-io.c:1259) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 96 bytes in 2 blocks are still reachable in loss record 8 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44B7E1: alloc_cache_extent (extent-cache.c:99) ==1154== by 0x44B7E1: __add_cache_extent (extent-cache.c:113) ==1154== by 0x42190F: add_pending (cmds-check.c:4522) ==1154== by 0x426C16: add_root_to_pending (cmds-check.c:5952) ==1154== by 0x426C16: deal_root_from_list.constprop.58 (cmds-check.c:7803) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 152 bytes in 1 blocks are still reachable in loss record 9 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44DB0E: device_list_add (volumes.c:110) ==1154== by 0x44DB0E: btrfs_scan_one_device (volumes.c:265) ==1154== by 0x453E29: check_mounted_where (utils.c:1339) ==1154== by 0x454188: check_mounted (utils.c:1322) ==1154== by 0x4294A7: cmd_check (cmds-check.c:9284) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 168 bytes in 3 blocks are still reachable in loss record 10 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x440895: update_space_info (extent-tree.c:1823) ==1154== by 0x4449B6: btrfs_read_block_groups (extent-tree.c:3254) ==1154== by 0x43F376: btrfs_setup_all_roots (disk-io.c:1044) ==1154== by 0x43F6C3: __open_ctree_fd (disk-io.c:1268) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 200 bytes in 1 blocks are possibly lost in loss record 11 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x4226ED: add_extent_rec.constprop.61 (cmds-check.c:4351) ==1154== by 0x422C2D: add_tree_backref (cmds-check.c:4412) ==1154== by 0x423257: process_extent_item.isra.27 (cmds-check.c:4979) ==1154== by 0x4258E3: run_next_block.constprop.59 (cmds-check.c:5780) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 208 bytes in 2 blocks are still reachable in loss record 12 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x424BBA: btrfs_new_block_group_record (cmds-check.c:4821) ==1154== by 0x425A2E: process_block_group_item (cmds-check.c:4852) ==1154== by 0x425A2E: run_next_block.constprop.59 (cmds-check.c:5798) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 400 bytes in 2 blocks are possibly lost in loss record 13 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x4226ED: add_extent_rec.constprop.61 (cmds-check.c:4351) ==1154== by 0x426AD0: add_root_to_pending (cmds-check.c:5953) ==1154== by 0x426AD0: deal_root_from_list.constprop.58 (cmds-check.c:7803) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 400 bytes in 2 blocks are possibly lost in loss record 14 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x42252F: add_extent_rec.constprop.61 (cmds-check.c:4304) ==1154== by 0x42314D: process_extent_item.isra.27 (cmds-check.c:4964) ==1154== by 0x4258E3: run_next_block.constprop.59 (cmds-check.c:5780) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 400 bytes in 5 blocks are possibly lost in loss record 15 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x4229B9: alloc_data_backref (cmds-check.c:4241) ==1154== by 0x4229B9: add_data_backref (cmds-check.c:4485) ==1154== by 0x426652: run_next_block.constprop.59 (cmds-check.c:5885) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 432 bytes in 6 blocks are still reachable in loss record 16 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x4276BF: add_root_item_to_list (cmds-check.c:7745) ==1154== by 0x4276BF: check_chunks_and_extents (cmds-check.c:7941) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 480 bytes in 15 blocks are possibly lost in loss record 17 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x422C61: alloc_tree_backref (cmds-check.c:4185) ==1154== by 0x422C61: add_tree_backref (cmds-check.c:4426) ==1154== by 0x423257: process_extent_item.isra.27 (cmds-check.c:4979) ==1154== by 0x4258E3: run_next_block.constprop.59 (cmds-check.c:5780) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 576 bytes in 6 blocks are still reachable in loss record 18 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44FAD3: read_one_chunk (volumes.c:1610) ==1154== by 0x45035E: btrfs_read_chunk_tree (volumes.c:1891) ==1154== by 0x43F4F4: btrfs_setup_chunk_tree_and_device_map (disk-io.c:1176) ==1154== by 0x43F692: __open_ctree_fd (disk-io.c:1259) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 584 bytes in 1 blocks are still reachable in loss record 19 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x43D675: btrfs_new_fs_info (disk-io.c:827) ==1154== by 0x43F59C: __open_ctree_fd (disk-io.c:1204) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 600 bytes in 1 blocks are still reachable in loss record 20 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x43D690: btrfs_new_fs_info (disk-io.c:833) ==1154== by 0x43F59C: __open_ctree_fd (disk-io.c:1204) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 600 bytes in 1 blocks are still reachable in loss record 21 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x43D6A8: btrfs_new_fs_info (disk-io.c:834) ==1154== by 0x43F59C: __open_ctree_fd (disk-io.c:1204) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 600 bytes in 1 blocks are still reachable in loss record 22 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x43D6BE: btrfs_new_fs_info (disk-io.c:835) ==1154== by 0x43F59C: __open_ctree_fd (disk-io.c:1204) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 600 bytes in 1 blocks are still reachable in loss record 23 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x43D6D4: btrfs_new_fs_info (disk-io.c:836) ==1154== by 0x43F59C: __open_ctree_fd (disk-io.c:1204) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 600 bytes in 1 blocks are still reachable in loss record 24 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x43D6EA: btrfs_new_fs_info (disk-io.c:837) ==1154== by 0x43F59C: __open_ctree_fd (disk-io.c:1204) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 600 bytes in 1 blocks are still reachable in loss record 25 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x43D700: btrfs_new_fs_info (disk-io.c:838) ==1154== by 0x43F59C: __open_ctree_fd (disk-io.c:1204) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 600 bytes in 1 blocks are still reachable in loss record 26 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x43EC62: btrfs_read_fs_root_no_cache (disk-io.c:696) ==1154== by 0x43EF9A: btrfs_read_fs_root (disk-io.c:800) ==1154== by 0x43F333: btrfs_setup_all_roots (disk-io.c:1049) ==1154== by 0x43F6C3: __open_ctree_fd (disk-io.c:1268) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 616 bytes in 7 blocks are still reachable in loss record 27 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44C1C9: UnknownInlinedFun (extent_io.c:43) ==1154== by 0x44C1C9: set_extent_bits (extent_io.c:300) ==1154== by 0x4449DF: btrfs_read_block_groups (extent-tree.c:3261) ==1154== by 0x43F376: btrfs_setup_all_roots (disk-io.c:1044) ==1154== by 0x43F6C3: __open_ctree_fd (disk-io.c:1268) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 1,000 bytes in 5 blocks are possibly lost in loss record 28 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x4226ED: add_extent_rec.constprop.61 (cmds-check.c:4351) ==1154== by 0x422A6C: add_data_backref (cmds-check.c:4461) ==1154== by 0x426652: run_next_block.constprop.59 (cmds-check.c:5885) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 1,008 bytes in 7 blocks are still reachable in loss record 29 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x4448CF: btrfs_read_block_groups (extent-tree.c:3225) ==1154== by 0x43F376: btrfs_setup_all_roots (disk-io.c:1044) ==1154== by 0x43F6C3: __open_ctree_fd (disk-io.c:1268) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 1,400 bytes in 7 blocks are still reachable in loss record 30 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x424A3C: btrfs_new_chunk_record (cmds-check.c:4716) ==1154== by 0x4258FE: process_chunk_item (cmds-check.c:4767) ==1154== by 0x4258FE: run_next_block.constprop.59 (cmds-check.c:5790) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 1,952 bytes in 61 blocks are possibly lost in loss record 31 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x422C61: alloc_tree_backref (cmds-check.c:4185) ==1154== by 0x422C61: add_tree_backref (cmds-check.c:4426) ==1154== by 0x4232EF: process_extent_item.isra.27 (cmds-check.c:4983) ==1154== by 0x4258E3: run_next_block.constprop.59 (cmds-check.c:5780) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 4,096 bytes in 1 blocks are still reachable in loss record 32 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x43D716: btrfs_new_fs_info (disk-io.c:839) ==1154== by 0x43F59C: __open_ctree_fd (disk-io.c:1204) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 11,552 bytes in 361 blocks are possibly lost in loss record 33 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x422C61: alloc_tree_backref (cmds-check.c:4185) ==1154== by 0x422C61: add_tree_backref (cmds-check.c:4426) ==1154== by 0x425456: run_next_block.constprop.59 (cmds-check.c:5916) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 15,000 bytes in 75 blocks are possibly lost in loss record 34 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x4226ED: add_extent_rec.constprop.61 (cmds-check.c:4351) ==1154== by 0x42314D: process_extent_item.isra.27 (cmds-check.c:4964) ==1154== by 0x4258E3: run_next_block.constprop.59 (cmds-check.c:5780) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 16,384 bytes in 1 blocks are still reachable in loss record 35 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x4273FE: check_chunks_and_extents (cmds-check.c:7891) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 16,512 bytes in 1 blocks are still reachable in loss record 36 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44BBC2: __alloc_extent_buffer (extent_io.c:541) ==1154== by 0x44C7B3: alloc_extent_buffer (extent_io.c:648) ==1154== by 0x43E8CD: read_tree_block (disk-io.c:314) ==1154== by 0x43F47E: btrfs_setup_chunk_tree_and_device_map (disk-io.c:1167) ==1154== by 0x43F692: __open_ctree_fd (disk-io.c:1259) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 16,512 bytes in 1 blocks are still reachable in loss record 37 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44BBC2: __alloc_extent_buffer (extent_io.c:541) ==1154== by 0x44C7B3: alloc_extent_buffer (extent_io.c:648) ==1154== by 0x43E8CD: read_tree_block (disk-io.c:314) ==1154== by 0x43F0DF: btrfs_setup_all_roots (disk-io.c:1001) ==1154== by 0x43F6C3: __open_ctree_fd (disk-io.c:1268) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 16,512 bytes in 1 blocks are still reachable in loss record 38 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44BBC2: __alloc_extent_buffer (extent_io.c:541) ==1154== by 0x44C7B3: alloc_extent_buffer (extent_io.c:648) ==1154== by 0x43E8CD: read_tree_block (disk-io.c:314) ==1154== by 0x43EB46: find_and_setup_root (disk-io.c:618) ==1154== by 0x43EBC4: setup_root_or_create_block (disk-io.c:943) ==1154== by 0x43F170: btrfs_setup_all_roots (disk-io.c:1008) ==1154== by 0x43F6C3: __open_ctree_fd (disk-io.c:1268) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 16,512 bytes in 1 blocks are still reachable in loss record 39 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44BBC2: __alloc_extent_buffer (extent_io.c:541) ==1154== by 0x44C7B3: alloc_extent_buffer (extent_io.c:648) ==1154== by 0x43E8CD: read_tree_block (disk-io.c:314) ==1154== by 0x43EB46: find_and_setup_root (disk-io.c:618) ==1154== by 0x43F196: btrfs_setup_all_roots (disk-io.c:1014) ==1154== by 0x43F6C3: __open_ctree_fd (disk-io.c:1268) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 16,512 bytes in 1 blocks are still reachable in loss record 40 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44BBC2: __alloc_extent_buffer (extent_io.c:541) ==1154== by 0x44C7B3: alloc_extent_buffer (extent_io.c:648) ==1154== by 0x43E8CD: read_tree_block (disk-io.c:314) ==1154== by 0x43EB46: find_and_setup_root (disk-io.c:618) ==1154== by 0x43EBC4: setup_root_or_create_block (disk-io.c:943) ==1154== by 0x43F1C7: btrfs_setup_all_roots (disk-io.c:1022) ==1154== by 0x43F6C3: __open_ctree_fd (disk-io.c:1268) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 16,512 bytes in 1 blocks are still reachable in loss record 41 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44BBC2: __alloc_extent_buffer (extent_io.c:541) ==1154== by 0x44C7B3: alloc_extent_buffer (extent_io.c:648) ==1154== by 0x43E8CD: read_tree_block (disk-io.c:314) ==1154== by 0x43EB46: find_and_setup_root (disk-io.c:618) ==1154== by 0x43EDC1: btrfs_read_fs_root_no_cache (disk-io.c:701) ==1154== by 0x43EF9A: btrfs_read_fs_root (disk-io.c:800) ==1154== by 0x43F333: btrfs_setup_all_roots (disk-io.c:1049) ==1154== by 0x43F6C3: __open_ctree_fd (disk-io.c:1268) ==1154== by 0x43F852: open_ctree_fs_info (disk-io.c:1300) ==1154== by 0x4294E1: cmd_check (cmds-check.c:9297) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 16,512 bytes in 1 blocks are still reachable in loss record 42 of 46 ==1154== at 0x4C2A987: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44BBC2: __alloc_extent_buffer (extent_io.c:541) ==1154== by 0x44C7B3: alloc_extent_buffer (extent_io.c:648) ==1154== by 0x43E8CD: read_tree_block (disk-io.c:314) ==1154== by 0x424EAF: run_next_block.constprop.59 (cmds-check.c:5699) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 17,328 bytes in 361 blocks are still reachable in loss record 43 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44B7E1: alloc_cache_extent (extent-cache.c:99) ==1154== by 0x44B7E1: __add_cache_extent (extent-cache.c:113) ==1154== by 0x42528E: run_next_block.constprop.59 (cmds-check.c:5663) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 17,328 bytes in 361 blocks are still reachable in loss record 44 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44B7E1: alloc_cache_extent (extent-cache.c:99) ==1154== by 0x44B7E1: __add_cache_extent (extent-cache.c:113) ==1154== by 0x421923: add_pending (cmds-check.c:4525) ==1154== by 0x4255E1: run_next_block.constprop.59 (cmds-check.c:5921) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 17,376 bytes in 362 blocks are still reachable in loss record 45 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x44B7E1: alloc_cache_extent (extent-cache.c:99) ==1154== by 0x44B7E1: __add_cache_extent (extent-cache.c:113) ==1154== by 0x42190F: add_pending (cmds-check.c:4522) ==1154== by 0x4255E1: run_next_block.constprop.59 (cmds-check.c:5921) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== 72,200 bytes in 361 blocks are possibly lost in loss record 46 of 46 ==1154== at 0x4C28C10: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==1154== by 0x4226ED: add_extent_rec.constprop.61 (cmds-check.c:4351) ==1154== by 0x42542D: run_next_block.constprop.59 (cmds-check.c:5910) ==1154== by 0x426B4C: deal_root_from_list.constprop.58 (cmds-check.c:7811) ==1154== by 0x42783C: check_chunks_and_extents (cmds-check.c:7973) ==1154== by 0x4299E8: cmd_check (cmds-check.c:9402) ==1154== by 0x40E831: main (btrfs.c:245) ==1154== ==1154== LEAK SUMMARY: ==1154== definitely lost: 0 bytes in 0 blocks ==1154== indirectly lost: 0 bytes in 0 blocks ==1154== possibly lost: 103,648 bytes in 890 blocks ==1154== still reachable: 197,875 bytes in 1,148 blocks ==1154== suppressed: 0 bytes in 0 blocks ==1154== ==1154== ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0) ==1154== ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0) Aborted (core dumped) [root@localhost ~]#
Created attachment 182231 [details] valgrind btrfs check Same thing as comment 2, but without the icky line wrapping.
Created attachment 182241 [details] valgrind btrfs-image