On 2019/3/20 上午6:36, Piotr Balwierz wrote: > Hello BTRFS experts, > > I am reporting/confirming the same problem present in kernel 4.19.0 > (Debian Buster, x86_64). > To be specific: > > 0) The BTRFS partition used to work fine for 2 years until a power cut > today. It uses lzo compression. Until power cut kernel version was > probably 4.14.0 > > 1) BTRFS partition refused to mount during boot with the following > kernel and systemd errors: > > |Mar 19 15:10:52 mamut kernel: BTRFS error (device dm-5): open_ctree > failed Mar 19 15:10:52 mamut kernel: BTRFS info (device dm-5): use lzo > compression, level 0 Mar 19 15:10:52 mamut kernel: BTRFS info (device > dm-5): disk space caching is enabled Mar 19 15:10:52 mamut kernel: BTRFS > info (device dm-5): has skinny extents Mar 19 15:10:52 mamut systemd[1]: > mnt-storage.mount: Mount process exited, code=killed, status=15/TERM Mar > 19 15:10:52 mamut systemd[1]: mnt-storage.mount: Failed with result > 'timeout'. Mar 19 15:10:52 mamut systemd[1]: Failed to mount > /mnt/storage. Mar 19 15:10:52 mamut kernel: BTRFS error (device dm-5): > super_total_bytes 52798547820544 mismatch with fs_devices total_rw_bytes > 105597095641088 Mar 19 15:10:52 mamut kernel: BTRFS error (device dm-5): > failed to read chunk tree: -22 Mar 19 15:10:52 mamut kernel: BTRFS error > (device dm-5): open_ctree failed| > > 2)|Note that total_rw_bytes in kernel error message equals exactly twice > ||super_total_bytes|. super_total_bytes is the correct size of the > partition (52TB, 48TiB). It equals to the size reported by fdisk. > Something being counted twice? The partition is on top of a 8-fold > multipath to a fibre channel-attached disk array (in case it matters). > > 3) the first manual mount failed with a generic message (wrong fs type etc) > > 4) the first btrfs check (without --repair) fails with an IO error. I > used to have no IO errors on this device before. > > |# btrfs check /dev/mapper/fc_trunk-part3 Opening filesystem to check... > Checking filesystem on /dev/mapper/fc_trunk-part3 UUID: > 40a2e65b-f34a-4d33-946d-055d93fe7ffa [1/7] checking root items ERROR: > failed to repair root items: Input/output error| > > 5) the second btrfs check with --repair succeeds. I did *not* run btrfs > rescue fix-device-size. > > btrfs check --repair /dev/mapper/fc_trunk-part3 > enabling repair mode > Opening filesystem to check... > Checking filesystem on /dev/mapper/fc_trunk-part3 > UUID: 40a2e65b-f34a-4d33-946d-055d93fe7ffa > [1/7] checking root items > Fixed 0 roots. > [2/7] checking extents > No device size related problem found > [3/7] checking free space cache > cache and super generation don't match, space cache will be invalidated > [4/7] checking fs roots > [5/7] checking only csums items (without verifying data) > [6/7] checking root refs > [7/7] checking quota groups skipped (not enabled on this FS) > found 41629742850048 bytes used, no error found > total csum bytes: 40569609916 > total tree bytes: 76425707520 > total fs tree bytes: 15665889280 > total extent tree bytes: 16241786880 > btree space waste bytes: 4094701258 > file data blocks allocated: 54396052914176 > referenced 67747603632128
If btrfs-check can repair, then your fs is not seriously corrupted, which is a good news. > > 6) The second try of manual mount succeeded, but it took 2 minutes. Slow mount is related to extent tree size. > # time mount /mnt/storage > real 2m9.076s > user 0m0.005s > sys 0m2.753s > > 7) btrfs inspect-internal dump-super reports only the correct size: > > btrfs inspect-internal dump-super -fa /dev/mapper/fc_trunk-part3 | > grep total > total_bytes 52798547820544 > dev_item.total_bytes 52798547820544 > backup_total_bytes: 52798547820544 > backup_total_bytes: 52798547820544 > backup_total_bytes: 52798547820544 > backup_total_bytes: 52798547820544 > total_bytes 52798547820544 > dev_item.total_bytes 52798547820544 > backup_total_bytes: 52798547820544 > backup_total_bytes: 52798547820544 > backup_total_bytes: 52798547820544 > backup_total_bytes: 52798547820544 > total_bytes 52798547820544 > dev_item.total_bytes 52798547820544 > backup_total_bytes: 52798547820544 > backup_total_bytes: 52798547820544 > backup_total_bytes: 52798547820544 > backup_total_bytes: 52798547820544 > > > 8) I did not try a second reboot. > btrfs-progs v4.20.1 > > btrfs fi usage /mnt/storage > Overall: > Device size: 48.02TiB > Device allocated: 37.94TiB This explains the slow mount. Unless using the new BG_TREE feature I purposed, the slow mount can't really be solved. Thanks, Qu > Device unallocated: 10.08TiB > Device missing: 0.00B > Used: 37.93TiB > Free (estimated): 10.08TiB (min: 5.04TiB) > Data ratio: 1.00 > Metadata ratio: 2.00 > Global reserve: 512.00MiB (used: 0.00B) > > Data,single: Size:37.80TiB, Used:37.79TiB > /dev/mapper/fc_trunk-part3 37.80TiB > > Metadata,DUP: Size:73.00GiB, Used:71.17GiB > /dev/mapper/fc_trunk-part3 146.00GiB > > System,DUP: Size:8.00MiB, Used:4.09MiB > /dev/mapper/fc_trunk-part3 16.00MiB > > Unallocated: > /dev/mapper/fc_trunk-part3 10.08TiB > > > > Hope that it will be helpful, > Piotr J. Balwierz > > > > On 24/10/2017 20.02, Konstantin V. Gavrilenko wrote: >> The mentioning of the device scan scode and the fact the total_bytes >> is double made me try hashing the raid from the fstab. >> So i booted, run the "inspect-internal dump-super" that confirmed that >> it is in order. >> # grep -i total_bytes hashed-inspect-internal >> >> total_bytes 32004083023872 >> dev_item.total_bytes 32004083023872 >> backup_total_bytes: 32004083023872 >> backup_total_bytes: 32004083023872 >> backup_total_bytes: 32004083023872 >> backup_total_bytes: 32004083023872 >> total_bytes 32004083023872 >> dev_item.total_bytes 32004083023872 >> backup_total_bytes: 32004083023872 >> backup_total_bytes: 32004083023872 >> backup_total_bytes: 32004083023872 >> backup_total_bytes: 32004083023872 >> total_bytes 32004083023872 >> dev_item.total_bytes 32004083023872 >> backup_total_bytes: 32004083023872 >> backup_total_bytes: 32004083023872 >> backup_total_bytes: 32004083023872 >> backup_total_bytes: 32004083023872 >> >> then I unhashed the device in fstab, mounted it manually and it >> successfully mounted. >> >> # time mount /mnt/arh-backup1/ >> >> real 2m49.021s >> user 0m0.000s >> sys 0m1.244s >> >> >> >> With the unhashed device in the fstab, i rebooted and upon reboot I >> run mount >> >> time mount /mnt/arh-backup1/ >> mount: wrong fs type, bad option, bad superblock on /dev/sda, >> missing codepage or helper program, or other error >> >> In some cases useful info is found in syslog - try >> dmesg | tail or so. >> >> real 1m20.499s >> user 0m0.000s >> sys 0m0.045s >> >> that failed. I further waited for couple of minutes and run the mount >> again, and it mounted successfully. >> >> >> So it seems that because of the amount of time it takes mount, nearly >> 3 minutes, to mount the device, there is some sort of race condition, >> and two device scans are running at the same time, or something similar. >> I can say one thing for sure, it wasn't happening on 4.10 and I have >> only observed such behaviour on 4.12 and 4.13 >> >> p.s. the disk does not mount automatically upon boot, but can be >> mounted manually later >> >> >> # uptime >> 19:54:45 up 4 min, 1 user, load average: 0.30, 0.74, 0.39 >> >> # time mount /mnt/arh-backup1/ >> >> real 2m52.247s >> user 0m0.000s >> sys 0m1.246s >> >> >> Here is the dmesg extract. It seems that for some reason on 204th >> second the system return "open ctree failed" >> on 329 second, I started the mount manually. >> >> [ 204.389231] BTRFS error (device sda): open_ctree failed >> [ 329.234613] BTRFS info (device sda): force zlib compression >> [ 329.234618] BTRFS info (device sda): using free space tree >> [ 329.234620] BTRFS info (device sda): has skinny extents >> >> >> hope that helps and thanks for your help >> >> >> Yours sincerely, >> Konstantin V. Gavrilenko >> >> >> >> ----- Original Message ----- >> From: "Qu Wenruo" <quwenruo.bt...@gmx.com> >> To: "Konstantin V. Gavrilenko" <k.gavrile...@arhont.com> >> Cc: "Linux fs Btrfs" <linux-btrfs@vger.kernel.org> >> Sent: Tuesday, 24 October, 2017 3:44:21 PM >> Subject: Re: super_total_bytes 32004083023872 mismatch with fs_devices >> total_rw_bytes 64008166047744 >> >> >> >> On 2017年10月24日 19:44, Konstantin V. Gavrilenko wrote: >>> answers inline marked with KVG: >>> >>> Yours sincerely, >>> Konstantin V. Gavrilenko >>> >>> >>> >>> >>> ----- Original Message ----- >>> From: "Qu Wenruo" <quwenruo.bt...@gmx.com> >>> To: "Konstantin V. Gavrilenko" <k.gavrile...@arhont.com>, "Linux fs >>> Btrfs" <linux-btrfs@vger.kernel.org> >>> Sent: Tuesday, 24 October, 2017 11:37:56 AM >>> Subject: Re: super_total_bytes 32004083023872 mismatch with >>> fs_devices total_rw_bytes 64008166047744 >>> >>> >>> >>> On 2017年10月24日 17:20, Konstantin V. Gavrilenko wrote: >>>> Hi list, >>>> >>>> having installed the recent kernel version I am no longer able to >>>> mount the btrfs partition with compression on the first attempt. >>>> Previously on 4.10.0-37-generic everything was working fine, once I >>>> switched to 4.13.9-041309-generic I started getting the following >>>> error while trying to mount it with the same options >>>> "compress-force=zlib,space_cache=v2" >>>> >>>> [ 204.596381] BTRFS error (device sda): open_ctree failed >>>> [ 204.631895] BTRFS info (device sda): force zlib compression >>>> [ 204.631901] BTRFS info (device sda): using free space tree >>>> [ 204.631903] BTRFS info (device sda): has skinny extents >>>> [ 204.890145] BTRFS error (device sda): super_total_bytes >>>> 32004083023872 mismatch with fs_devices total_rw_bytes 64008166047744 >>>> [ 204.891276] BTRFS error (device sda): failed to read chunk tree: -22 >>>> [ 204.944333] BTRFS error (device sda): open_ctree failed >>> Such problem can be easily fixed with this branch: >>> https://github.com/adam900710/btrfs-progs/tree/check_unaligned_dev >>> >>> Use "btrfs rescue fix-device-size" should handle it well. >>> >>> But the problem is, normally the super_total_bytes should only be less >>> than 4K smaller than total device size. >>> >>> Unless something else went wrong, it should not have such large >>> difference. >>> >>> >>> KVG: Thanks, will try. >>> The drive was initially created as RAID5 with 4 x 8tb devices, and >>> later expanded to included another 8Tb. So now it is 5x8tb RAID5. >>> >>> >>>> For some reason, the super_total_bytes is exactly half of >>>> total_rw_bytes. >>>> >>>> >>>> however, if after unsuccessful first mount attempt, I mount it with >>>> minimum number of options "space_cache=v2" the partition mounts. >>>> Then I umount it, and mount normally, with full set of options >>>> "compress-force=zlib,space_cache=v2" it mounts without an error. >>>> I also observed the same error on 4.12.14-041214-generic >>>> Any ideas why this might be happening? >>> Would you please provide super dump by: >>> >>> # btrfs inspect-internal dump-super -fa /dev/sda >>> >>> (Although I don't think it will be very interesting since it can be >>> mounted later) >>> >>> >>> KVG: here you go >>> >>> # btrfs inspect-internal dump-super -fa /dev/sda >>> superblock: bytenr=65536, device=/dev/sda >>> --------------------------------------------------------- >>> csum_type 0 (crc32c) >>> csum_size 4 >>> csum 0xc4b95762 [match] >>> bytenr 65536 >>> flags 0x1 >>> ( WRITTEN ) >>> magic _BHRfS_M [match] >>> fsid 017b587a-3e88-4f08-8616-ec686f8f969f >>> label arh-backup >>> generation 145942 >>> root 17334200778752 >>> sys_array_size 129 >>> chunk_root_generation 145699 >>> root_level 1 >>> chunk_root 20971520 >>> chunk_root_level 1 >>> log_root 17334149644288 >>> log_root_transid 0 >>> log_root_level 0 >>> total_bytes 32004083023872 >> Here 32004083023872. >>> bytes_used 19719727349760 >>> sectorsize 4096 >>> nodesize 16384 >>> leafsize (deprecated) 16384 >>> stripesize 4096 >>> root_dir 6 >>> num_devices 1 >>> compat_flags 0x0 >>> compat_ro_flags 0x3 >>> ( FREE_SPACE_TREE | >>> FREE_SPACE_TREE_VALID ) >>> incompat_flags 0x169 >>> ( MIXED_BACKREF | >>> COMPRESS_LZO | >>> BIG_METADATA | >>> EXTENDED_IREF | >>> SKINNY_METADATA ) >>> cache_generation 7 >>> uuid_tree_generation 145942 >>> dev_item.uuid ee632cde-2139-4181-9d57-ff892768f2ef >>> dev_item.fsid 017b587a-3e88-4f08-8616-ec686f8f969f [match] >>> dev_item.type 0 >>> dev_item.total_bytes 32004083023872 >> And here, 32004083023872 again. >> >> So it matches now. >> >> And considering the original report says it's twice the size, I wonder >> if it's something related to device scan. >> >> Like the same disk get counted twice, so it's reporting like that. >> >> If the problem happens again, would you please try run "btrfs device >> scan" and remount it with the same mount option? >> >> >>> dev_item.bytes_used 19832028266496 >>> dev_item.io_align 4096 >>> dev_item.io_width 4096 >>> dev_item.sector_size 4096 >>> dev_item.devid 1 >>> dev_item.dev_group 0 >>> dev_item.seek_speed 0 >>> dev_item.bandwidth 0 >>> dev_item.generation 0 >>> sys_chunk_array[2048]: >>> item 0 key (FIRST_CHUNK_TREE CHUNK_ITEM 20971520) >>> length 8388608 owner 2 stripe_len 65536 type SYSTEM|DUP >>> io_align 65536 io_width 65536 sector_size 4096 >>> num_stripes 2 sub_stripes 0 >>> stripe 0 devid 1 offset 20971520 >>> dev_uuid ee632cde-2139-4181-9d57-ff892768f2ef >>> stripe 1 devid 1 offset 29360128 >>> dev_uuid ee632cde-2139-4181-9d57-ff892768f2ef >>> backup_roots[4]: >>> backup 0: >>> backup_tree_root: 17334200778752 gen: >>> 145940 level: 1 >>> backup_chunk_root: 20971520 gen: >>> 145699 level: 1 >>> backup_extent_root: 17334177021952 gen: >>> 145940 level: 3 >>> backup_fs_root: 17334133260288 gen: >>> 145941 level: 3 >>> backup_dev_root: 32391168 gen: >>> 145836 level: 1 >>> backup_csum_root: 17154410381312 gen: >>> 145925 level: 3 >>> backup_total_bytes: 32004083023872 >>> backup_bytes_used: 19719727349760 >>> backup_num_devices: 1 >>> >>> backup 1: >>> backup_tree_root: 17334201057280 gen: >>> 145941 level: 1 >>> backup_chunk_root: 20971520 gen: >>> 145699 level: 1 >>> backup_extent_root: 17334177988608 gen: >>> 145941 level: 3 >>> backup_fs_root: 17334133161984 gen: >>> 145942 level: 3 >>> backup_dev_root: 32391168 gen: >>> 145836 level: 1 >>> backup_csum_root: 17154410381312 gen: >>> 145925 level: 3 >>> backup_total_bytes: 32004083023872 >>> backup_bytes_used: 19719727349760 >>> backup_num_devices: 1 >>> >>> backup 2: >>> backup_tree_root: 17334200778752 gen: >>> 145942 level: 1 >>> backup_chunk_root: 20971520 gen: >>> 145699 level: 1 >>> backup_extent_root: 17334184558592 gen: >>> 145942 level: 3 >>> backup_fs_root: 17334135275520 gen: >>> 145943 level: 3 >>> backup_dev_root: 32391168 gen: >>> 145836 level: 1 >>> backup_csum_root: 17154410381312 gen: >>> 145925 level: 3 >>> backup_total_bytes: 32004083023872 >>> backup_bytes_used: 19719727349760 >>> backup_num_devices: 1 >>> >>> backup 3: >>> backup_tree_root: 17334201057280 gen: >>> 145939 level: 1 >>> backup_chunk_root: 20971520 gen: >>> 145699 level: 1 >>> backup_extent_root: 17334177988608 gen: >>> 145939 level: 3 >>> backup_fs_root: 17334131884032 gen: >>> 145940 level: 3 >>> backup_dev_root: 32391168 gen: >>> 145836 level: 1 >>> backup_csum_root: 17154410381312 gen: >>> 145925 level: 3 >>> backup_total_bytes: 32004083023872 >>> backup_bytes_used: 19719727349760 >>> backup_num_devices: 1 >>> >>> >>> superblock: bytenr=67108864, device=/dev/sda >>> --------------------------------------------------------- >>> csum_type 0 (crc32c) >>> csum_size 4 >>> csum 0xd1c4187f [match] >>> bytenr 67108864 >>> flags 0x1 >>> ( WRITTEN ) >>> magic _BHRfS_M [match] >>> fsid 017b587a-3e88-4f08-8616-ec686f8f969f >>> label arh-backup >>> generation 145942 >>> root 17334200778752 >>> sys_array_size 129 >>> chunk_root_generation 145699 >>> root_level 1 >>> chunk_root 20971520 >>> chunk_root_level 1 >>> log_root 0 >>> log_root_transid 0 >>> log_root_level 0 >>> total_bytes 32004083023872 >>> bytes_used 19719727349760 >>> sectorsize 4096 >>> nodesize 16384 >>> leafsize (deprecated) 16384 >>> stripesize 4096 >>> root_dir 6 >>> num_devices 1 >>> compat_flags 0x0 >>> compat_ro_flags 0x3 >>> ( FREE_SPACE_TREE | >>> FREE_SPACE_TREE_VALID ) >>> incompat_flags 0x169 >>> ( MIXED_BACKREF | >>> COMPRESS_LZO | >>> BIG_METADATA | >>> EXTENDED_IREF | >>> SKINNY_METADATA ) >>> cache_generation 7 >>> uuid_tree_generation 145942 >>> dev_item.uuid ee632cde-2139-4181-9d57-ff892768f2ef >>> dev_item.fsid 017b587a-3e88-4f08-8616-ec686f8f969f [match] >>> dev_item.type 0 >>> dev_item.total_bytes 32004083023872 >>> dev_item.bytes_used 19832028266496 >>> dev_item.io_align 4096 >>> dev_item.io_width 4096 >>> dev_item.sector_size 4096 >>> dev_item.devid 1 >>> dev_item.dev_group 0 >>> dev_item.seek_speed 0 >>> dev_item.bandwidth 0 >>> dev_item.generation 0 >>> sys_chunk_array[2048]: >>> item 0 key (FIRST_CHUNK_TREE CHUNK_ITEM 20971520) >>> length 8388608 owner 2 stripe_len 65536 type SYSTEM|DUP >>> io_align 65536 io_width 65536 sector_size 4096 >>> num_stripes 2 sub_stripes 0 >>> stripe 0 devid 1 offset 20971520 >>> dev_uuid ee632cde-2139-4181-9d57-ff892768f2ef >>> stripe 1 devid 1 offset 29360128 >>> dev_uuid ee632cde-2139-4181-9d57-ff892768f2ef >>> backup_roots[4]: >>> backup 0: >>> backup_tree_root: 17334200778752 gen: >>> 145940 level: 1 >>> backup_chunk_root: 20971520 gen: >>> 145699 level: 1 >>> backup_extent_root: 17334177021952 gen: >>> 145940 level: 3 >>> backup_fs_root: 17334133260288 gen: >>> 145941 level: 3 >>> backup_dev_root: 32391168 gen: >>> 145836 level: 1 >>> backup_csum_root: 17154410381312 gen: >>> 145925 level: 3 >>> backup_total_bytes: 32004083023872 >>> backup_bytes_used: 19719727349760 >>> backup_num_devices: 1 >>> >>> backup 1: >>> backup_tree_root: 17334201057280 gen: >>> 145941 level: 1 >>> backup_chunk_root: 20971520 gen: >>> 145699 level: 1 >>> backup_extent_root: 17334177988608 gen: >>> 145941 level: 3 >>> backup_fs_root: 17334133161984 gen: >>> 145942 level: 3 >>> backup_dev_root: 32391168 gen: >>> 145836 level: 1 >>> backup_csum_root: 17154410381312 gen: >>> 145925 level: 3 >>> backup_total_bytes: 32004083023872 >>> backup_bytes_used: 19719727349760 >>> backup_num_devices: 1 >>> >>> backup 2: >>> backup_tree_root: 17334200778752 gen: >>> 145942 level: 1 >>> backup_chunk_root: 20971520 gen: >>> 145699 level: 1 >>> backup_extent_root: 17334184558592 gen: >>> 145942 level: 3 >>> backup_fs_root: 17334133161984 gen: >>> 145942 level: 3 >>> backup_dev_root: 32391168 gen: >>> 145836 level: 1 >>> backup_csum_root: 17154410381312 gen: >>> 145925 level: 3 >>> backup_total_bytes: 32004083023872 >>> backup_bytes_used: 19719727349760 >>> backup_num_devices: 1 >>> >>> backup 3: >>> backup_tree_root: 17334201057280 gen: >>> 145939 level: 1 >>> backup_chunk_root: 20971520 gen: >>> 145699 level: 1 >>> backup_extent_root: 17334177988608 gen: >>> 145939 level: 3 >>> backup_fs_root: 17334131884032 gen: >>> 145940 level: 3 >>> backup_dev_root: 32391168 gen: >>> 145836 level: 1 >>> backup_csum_root: 17154410381312 gen: >>> 145925 level: 3 >>> backup_total_bytes: 32004083023872 >>> backup_bytes_used: 19719727349760 >>> backup_num_devices: 1 >>> >>> >>> superblock: bytenr=274877906944, device=/dev/sda >>> --------------------------------------------------------- >>> csum_type 0 (crc32c) >>> csum_size 4 >>> csum 0x2c434e4e [match] >>> bytenr 274877906944 >>> flags 0x1 >>> ( WRITTEN ) >>> magic _BHRfS_M [match] >>> fsid 017b587a-3e88-4f08-8616-ec686f8f969f >>> label arh-backup >>> generation 145942 >>> root 17334200778752 >>> sys_array_size 129 >>> chunk_root_generation 145699 >>> root_level 1 >>> chunk_root 20971520 >>> chunk_root_level 1 >>> log_root 0 >>> log_root_transid 0 >>> log_root_level 0 >>> total_bytes 32004083023872 >>> bytes_used 19719727349760 >>> sectorsize 4096 >>> nodesize 16384 >>> leafsize (deprecated) 16384 >>> stripesize 4096 >>> root_dir 6 >>> num_devices 1 >>> compat_flags 0x0 >>> compat_ro_flags 0x3 >>> ( FREE_SPACE_TREE | >>> FREE_SPACE_TREE_VALID ) >>> incompat_flags 0x169 >>> ( MIXED_BACKREF | >>> COMPRESS_LZO | >>> BIG_METADATA | >>> EXTENDED_IREF | >>> SKINNY_METADATA ) >>> cache_generation 7 >>> uuid_tree_generation 145942 >>> dev_item.uuid ee632cde-2139-4181-9d57-ff892768f2ef >>> dev_item.fsid 017b587a-3e88-4f08-8616-ec686f8f969f [match] >>> dev_item.type 0 >>> dev_item.total_bytes 32004083023872 >>> dev_item.bytes_used 19832028266496 >>> dev_item.io_align 4096 >>> dev_item.io_width 4096 >>> dev_item.sector_size 4096 >>> dev_item.devid 1 >>> dev_item.dev_group 0 >>> dev_item.seek_speed 0 >>> dev_item.bandwidth 0 >>> dev_item.generation 0 >>> sys_chunk_array[2048]: >>> item 0 key (FIRST_CHUNK_TREE CHUNK_ITEM 20971520) >>> length 8388608 owner 2 stripe_len 65536 type SYSTEM|DUP >>> io_align 65536 io_width 65536 sector_size 4096 >>> num_stripes 2 sub_stripes 0 >>> stripe 0 devid 1 offset 20971520 >>> dev_uuid ee632cde-2139-4181-9d57-ff892768f2ef >>> stripe 1 devid 1 offset 29360128 >>> dev_uuid ee632cde-2139-4181-9d57-ff892768f2ef >>> backup_roots[4]: >>> backup 0: >>> backup_tree_root: 17334200778752 gen: >>> 145940 level: 1 >>> backup_chunk_root: 20971520 gen: >>> 145699 level: 1 >>> backup_extent_root: 17334177021952 gen: >>> 145940 level: 3 >>> backup_fs_root: 17334133260288 gen: >>> 145941 level: 3 >>> backup_dev_root: 32391168 gen: >>> 145836 level: 1 >>> backup_csum_root: 17154410381312 gen: >>> 145925 level: 3 >>> backup_total_bytes: 32004083023872 >>> backup_bytes_used: 19719727349760 >>> backup_num_devices: 1 >>> >>> backup 1: >>> backup_tree_root: 17334201057280 gen: >>> 145941 level: 1 >>> backup_chunk_root: 20971520 gen: >>> 145699 level: 1 >>> backup_extent_root: 17334177988608 gen: >>> 145941 level: 3 >>> backup_fs_root: 17334133161984 gen: >>> 145942 level: 3 >>> backup_dev_root: 32391168 gen: >>> 145836 level: 1 >>> backup_csum_root: 17154410381312 gen: >>> 145925 level: 3 >>> backup_total_bytes: 32004083023872 >>> backup_bytes_used: 19719727349760 >>> backup_num_devices: 1 >>> >>> backup 2: >>> backup_tree_root: 17334200778752 gen: >>> 145942 level: 1 >>> backup_chunk_root: 20971520 gen: >>> 145699 level: 1 >>> backup_extent_root: 17334184558592 gen: >>> 145942 level: 3 >>> backup_fs_root: 17334133161984 gen: >>> 145942 level: 3 >>> backup_dev_root: 32391168 gen: >>> 145836 level: 1 >>> backup_csum_root: 17154410381312 gen: >>> 145925 level: 3 >>> backup_total_bytes: 32004083023872 >>> backup_bytes_used: 19719727349760 >>> backup_num_devices: 1 >>> >>> backup 3: >>> backup_tree_root: 17334201057280 gen: >>> 145939 level: 1 >>> backup_chunk_root: 20971520 gen: >>> 145699 level: 1 >>> backup_extent_root: 17334177988608 gen: >>> 145939 level: 3 >>> backup_fs_root: 17334131884032 gen: >>> 145940 level: 3 >>> backup_dev_root: 32391168 gen: >>> 145836 level: 1 >>> backup_csum_root: 17154410381312 gen: >>> 145925 level: 3 >>> backup_total_bytes: 32004083023872 >>> backup_bytes_used: 19719727349760 >>> backup_num_devices: 1 >>> >>> >>> >>> >>> >>> And device tree dump by: >>> # btrfs inspect-internal dump-tree -t dev /dev/sda >>> >>> KVG: Here you go again >>> >>> # btrfs inspect-internal dump-tree -t dev /dev/sda > >>> /tmp/inspect-internal-dump-tree >>> parent transid verify failed on 17334203744256 wanted 145954 found >>> 145956 >>> parent transid verify failed on 17334203744256 wanted 145954 found >>> 145956 >>> parent transid verify failed on 17334203744256 wanted 145954 found >>> 145956 >>> parent transid verify failed on 17334203744256 wanted 145954 found >>> 145956 >>> Ignoring transid failure >>> >>> # wc -l < >>> inspect-internal-dump-tree >>> >>> >>> 74760 >> That's beyond my expectation, but since the super block matches, I >> wonder it's related to device scan implemented wrongly or has some race. >> >> And in that case, dump-tree output is not that important. >> >> BTW, are you running dump-tree with device mounted? If so the transid >> verification failure may not be a big problem. >> >>> >>> # head -n 150 < >>> inspect-internal-dump-tree >>> >>> >>> [13:28:00] >>> btrfs-progs v4.13.3 >>> device tree key (DEV_TREE ROOT_ITEM 0) >>> node 32391168 level 1 items 88 free 405 generation 145836 owner 4 >>> fs uuid 017b587a-3e88-4f08-8616-ec686f8f969f >>> chunk uuid 5820b5e3-9610-4cf3-a37a-b638a9963084 >>> key (0 PERSISTENT_ITEM 1) block 32407552 (1978) gen 145836 >>> key (1 DEV_EXTENT 234113466368) block 231767769088 >>> (14145982) gen 274 >>> key (1 DEV_EXTENT 473557893120) block 484797186048 >>> (29589672) gen 378 >>> key (1 DEV_EXTENT 710854836224) block 861293805568 >>> (52569202) gen 482 >>> key (1 DEV_EXTENT 949225521152) block 1042388156416 >>> (63622324) gen 587 >>> key (1 DEV_EXTENT 1187596206080) block 1221328453632 >>> (74543973) gen 691 >>> key (1 DEV_EXTENT 1424893149184) block 1583808970752 >>> (96668028) gen 764 >>> key (1 DEV_EXTENT 1662190092288) block 1603743318016 >>> (97884724) gen 843 >>> key (1 DEV_EXTENT 1900560777216) block 2231483187200 >>> (136198925) gen 1017 >>> key (1 DEV_EXTENT 2138931462144) block 2241853407232 >>> (136831873) gen 1080 >>> key (1 DEV_EXTENT 2371933437952) block 2268266070016 >>> (138443974) gen 1138 >>> key (1 DEV_EXTENT 2610304122880) block 2311626964992 >>> (141090513) gen 1177 >>> key (1 DEV_EXTENT 2848674807808) block 2590371545088 >>> (158103732) gen 1263 >>> key (1 DEV_EXTENT 3088119234560) block 2837798567936 >>> (173205479) gen 1314 >>> key (1 DEV_EXTENT 3326489919488) block 3114321903616 >>> (190083124) gen 1372 >>> key (1 DEV_EXTENT 3564860604416) block 3591785086976 >>> (219225164) gen 1448 >>> key (1 DEV_EXTENT 3802157547520) block 3718121062400 >>> (226936100) gen 1524 >>> key (1 DEV_EXTENT 4040528232448) block 21927333150720 >>> (1338338205) gen 136290 >>> key (1 DEV_EXTENT 4278898917376) block 4133925863424 >>> (252314811) gen 1724 >>> key (1 DEV_EXTENT 4516195860480) block 22441652109312 >>> (1369729743) gen 133266 >>> key (1 DEV_EXTENT 4755640287232) block 14608468082688 >>> (891630132) gen 133130 >>> key (1 DEV_EXTENT 4992937230336) block 5180103491584 >>> (316168426) gen 2146 >>> key (1 DEV_EXTENT 5231307915264) block 20077315735552 >>> (1225422103) gen 131467 >>> key (1 DEV_EXTENT 5468604858368) block 5866555588608 >>> (358066137) gen 3067 >>> key (1 DEV_EXTENT 5705901801472) block 6367858622464 >>> (388663246) gen 3174 >>> key (1 DEV_EXTENT 5826160885760) block 6367858638848 >>> (388663247) gen 3174 >>> key (1 DEV_EXTENT 6064531570688) block 17709247496192 >>> (1080886688) gen 63205 >>> key (1 DEV_EXTENT 6303975997440) block 17459226411008 >>> (1065626612) gen 145661 >>> key (1 DEV_EXTENT 6500470751232) block 17459593674752 >>> (1065649028) gen 145669 >>> key (1 DEV_EXTENT 6737767694336) block 14608384458752 >>> (891625028) gen 132007 >>> key (1 DEV_EXTENT 6976138379264) block 15230725767168 >>> (929609727) gen 132017 >>> key (1 DEV_EXTENT 7136125911040) block 13657160859648 >>> (833566947) gen 137915 >>> key (1 DEV_EXTENT 7255311253504) block 13657457180672 >>> (833585033) gen 137917 >>> key (1 DEV_EXTENT 7492608196608) block 22441489580032 >>> (1369719823) gen 136294 >>> key (1 DEV_EXTENT 7730978881536) block 13854137253888 >>> (845589432) gen 138616 >>> key (1 DEV_EXTENT 7969349566464) block 7788285968384 >>> (475359251) gen 140545 >>> key (1 DEV_EXTENT 8207720251392) block 14113310818304 >>> (861408131) gen 127092 >>> key (1 DEV_EXTENT 8446090936320) block 8679398998016 >>> (529748474) gen 17985 >>> key (1 DEV_EXTENT 8684461621248) block 8916314619904 >>> (544208656) gen 18574 >>> key (1 DEV_EXTENT 8922832306176) block 29434636730368 >>> (1796547652) gen 144688 >>> key (1 DEV_EXTENT 9157981765632) block 6453626322944 >>> (393898091) gen 145220 >>> key (1 DEV_EXTENT 9361992712192) block 19459087679488 >>> (1187688457) gen 132049 >>> key (1 DEV_EXTENT 9600363397120) block 12893675651072 >>> (786967508) gen 116367 >>> key (1 DEV_EXTENT 9720622481408) block 22441517318144 >>> (1369721516) gen 95603 >>> key (1 DEV_EXTENT 9847860887552) block 22441466626048 >>> (1369718422) gen 117878 >>> key (1 DEV_EXTENT 10082473476096) block 22493359931392 >>> (1372885738) gen 117882 >>> key (1 DEV_EXTENT 10232797331456) block 13983139643392 >>> (853463113) gen 137923 >>> key (1 DEV_EXTENT 10471168016384) block 6959763996672 >>> (424790283) gen 105377 >>> key (1 DEV_EXTENT 10591427100672) block 10067009994752 >>> (614441528) gen 27773 >>> key (1 DEV_EXTENT 10830871527424) block 10072383062016 >>> (614769474) gen 28150 >>> key (1 DEV_EXTENT 11070315954176) block 10072413356032 >>> (614771323) gen 92253 >>> key (1 DEV_EXTENT 11309760380928) block 22493328687104 >>> (1372883831) gen 133268 >>> key (1 DEV_EXTENT 11548131065856) block 1042474778624 >>> (63627611) gen 133909 >>> key (1 DEV_EXTENT 11785428008960) block 15016548761600 >>> (916537400) gen 121951 >>> key (1 DEV_EXTENT 12024872435712) block 12656435298304 >>> (772487506) gen 32985 >>> key (1 DEV_EXTENT 12263243120640) block 12893629710336 >>> (786964704) gen 33745 >>> key (1 DEV_EXTENT 12500540063744) block 16644219928576 >>> (1015882564) gen 112366 >>> key (1 DEV_EXTENT 12738910748672) block 14703563259904 >>> (897434281) gen 145699 >>> key (1 DEV_EXTENT 12976207691776) block 14113684733952 >>> (861430953) gen 137926 >>> key (1 DEV_EXTENT 13214578376704) block 15230715084800 >>> (929609075) gen 116469 >>> key (1 DEV_EXTENT 13452949061632) block 12787035504640 >>> (780458710) gen 119919 >>> key (1 DEV_EXTENT 13690246004736) block 10067511001088 >>> (614472107) gen 119958 >>> key (1 DEV_EXTENT 13928616689664) block 14113506328576 >>> (861420064) gen 106290 >>> key (1 DEV_EXTENT 14166987374592) block 861654532096 >>> (52591219) gen 140596 >>> key (1 DEV_EXTENT 14404284317696) block 6959531130880 >>> (424776070) gen 103496 >>> key (1 DEV_EXTENT 14643728744448) block 484408541184 >>> (29565951) gen 103596 >>> key (1 DEV_EXTENT 14882099429376) block 205519962112 >>> (12543943) gen 137977 >>> key (1 DEV_EXTENT 15118322630656) block 13289788358656 >>> (811144309) gen 145698 >>> key (1 DEV_EXTENT 15356693315584) block 13289789358080 >>> (811144370) gen 145698 >>> key (1 DEV_EXTENT 15596137742336) block 15736233984000 >>> (960463500) gen 117936 >>> key (1 DEV_EXTENT 15833434685440) block 1221260197888 >>> (74539807) gen 138299 >>> key (1 DEV_EXTENT 16071805370368) block 6368249397248 >>> (388687097) gen 124384 >>> key (1 DEV_EXTENT 16310176055296) block 12787123699712 >>> (780464093) gen 138137 >>> key (1 DEV_EXTENT 16548546740224) block 9420764561408 >>> (574997837) gen 124415 >>> key (1 DEV_EXTENT 16787991166976) block 22441589932032 >>> (1369725948) gen 124583 >>> key (1 DEV_EXTENT 17025288110080) block 15016789147648 >>> (916552072) gen 144864 >>> key (1 DEV_EXTENT 17263658795008) block 17459171082240 >>> (1065623235) gen 144951 >>> key (1 DEV_EXTENT 17502029479936) block 673143095296 >>> (41085394) gen 143317 >>> key (1 DEV_EXTENT 17740400164864) block 19010757427200 >>> (1160324550) gen 141153 >>> key (1 DEV_EXTENT 17979844591616) block 10067131596800 >>> (614448950) gen 141191 >>> key (1 DEV_EXTENT 18217141534720) block 205212958720 >>> (12525205) gen 124623 >>> key (1 DEV_EXTENT 18455512219648) block 205287997440 >>> (12529785) gen 124626 >>> key (1 DEV_EXTENT 18692809162752) block 16703827378176 >>> (1019520714) gen 124744 >>> key (1 DEV_EXTENT 18931179847680) block 7268874698752 >>> (443656903) gen 124899 >>> key (1 DEV_EXTENT 19169550532608) block 14291177324544 >>> (872264241) gen 141256 >>> key (1 DEV_EXTENT 19407921217536) block 29134446510080 >>> (1778225495) gen 142791 >>> key (1 DEV_EXTENT 19646291902464) block 6453644148736 >>> (393899179) gen 143236 >>> key (1 DEV_EXTENT 19883588845568) block 15998310219776 >>> (976459364) gen 143270 >>> leaf 32407552 items 223 free space 12 generation 145836 owner 4 >>> leaf 32407552 flags 0x1(WRITTEN) backref revision 1 >>> fs uuid 017b587a-3e88-4f08-8616-ec686f8f969f >>> chunk uuid 5820b5e3-9610-4cf3-a37a-b638a9963084 >>> item 0 key (0 PERSISTENT_ITEM 1) itemoff 16243 itemsize 40 >>> persistent item objectid 0 offset 1 >>> device stats >>> write_errs 0 read_errs 0 flush_errs 0 >>> corruption_errs 0 generation 0 >>> item 1 key (1 DEV_EXTENT 20971520) itemoff 16195 itemsize 48 >>> dev extent chunk_tree 3 >>> chunk_objectid 256 chunk_offset 20971520 length 8388608 >>> chunk_tree_uuid 5820b5e3-9610-4cf3-a37a-b638a9963084 >>> item 2 key (1 DEV_EXTENT 29360128) itemoff 16147 itemsize 48 >>> dev extent chunk_tree 3 >>> chunk_objectid 256 chunk_offset 20971520 length 8388608 >>> chunk_tree_uuid 5820b5e3-9610-4cf3-a37a-b638a9963084 >>> item 3 key (1 DEV_EXTENT 37748736) itemoff 16099 itemsize 48 >>> dev extent chunk_tree 3 >>> chunk_objectid 256 chunk_offset 29360128 length >>> 1073741824 >>> chunk_tree_uuid 5820b5e3-9610-4cf3-a37a-b638a9963084 >>> item 4 key (1 DEV_EXTENT 1111490560) itemoff 16051 itemsize 48 >>> dev extent chunk_tree 3 >>> chunk_objectid 256 chunk_offset 29360128 length >>> 1073741824 >>> chunk_tree_uuid 5820b5e3-9610-4cf3-a37a-b638a9963084 >>> item 5 key (1 DEV_EXTENT 2185232384) itemoff 16003 itemsize 48 >>> dev extent chunk_tree 3 >>> chunk_objectid 256 chunk_offset 16135487488 length >>> 1073741824 >>> chunk_tree_uuid 00000000-0000-0000-0000-000000000000 >>> item 6 key (1 DEV_EXTENT 3258974208) itemoff 15955 itemsize 48 >>> dev extent chunk_tree 3 >>> chunk_objectid 256 chunk_offset 17209229312 length >>> 1073741824 >>> chunk_tree_uuid 00000000-0000-0000-0000-000000000000 >>> item 7 key (1 DEV_EXTENT 4332716032) itemoff 15907 itemsize 48 >>> dev extent chunk_tree 3 >>> chunk_objectid 256 chunk_offset 18282971136 length >>> 1073741824 >>> chunk_tree_uuid 00000000-0000-0000-0000-000000000000 >>> item 8 key (1 DEV_EXTENT 5406457856) itemoff 15859 itemsize 48 >>> dev extent chunk_tree 3 >>> chunk_objectid 256 chunk_offset 19356712960 length >>> 1073741824 >>> chunk_tree_uuid 00000000-0000-0000-0000-000000000000 >>> item 9 key (1 DEV_EXTENT 6480199680) itemoff 15811 itemsize 48 >>> dev extent chunk_tree 3 >>> chunk_objectid 256 chunk_offset 20430454784 length >>> 1073741824 >>> chunk_tree_uuid 00000000-0000-0000-0000-000000000000 >>> item 10 key (1 DEV_EXTENT 7553941504) itemoff 15763 itemsize 48 >>> dev extent chunk_tree 3 >>> chunk_objectid 256 chunk_offset 21504196608 length >>> 1073741824 >>> chunk_tree_uuid 00000000-0000-0000-0000-000000000000 >>> item 11 key (1 DEV_EXTENT 8627683328) itemoff 15715 itemsize 48 >>> dev extent chunk_tree 3 >>> chunk_objectid 256 chunk_offset 22577938432 length >>> 1073741824 >>> chunk_tree_uuid 00000000-0000-0000-0000-000000000000 >>> item 12 key (1 DEV_EXTENT 9701425152) itemoff 15667 itemsize 48 >>> dev extent chunk_tree 3 >>> chunk_objectid 256 chunk_offset 23651680256 length >>> 1073741824 >>> chunk_tree_uuid 00000000-0000-0000-0000-000000000000 >>> item 13 key (1 DEV_EXTENT 10775166976) itemoff 15619 >>> itemsize 48 >>> >>> KVG: and the complete file is attached to this message >>> >>> >>> >>> >>> Normally it should not be mountable after v4.6 kernel if >>> super_total_bytes mismatch, but I'm more interested in how it mounted >>> successfully. >>> >>> KVG: I've no idea why it mounts successfully when the compressions >>> flags are omitted. No indication in the dmesg. >> I think it's device scan code, maybe I can check it later. >> >> Considering your superblock is good, you won't encounter such problem >> any longer. >> >> And if it really happens again, please try "btrfs device scan" first. >> >> Thanks, >> Qu >> >>> >>> And BTW, are you using x86_64 kernel or x86 kernel? >>> I don't think it's related in your case, but some reports about 32bit >>> kernel has strange bugs are in mail list, so just in case. >>> >>> KVG: both kernels are 64bit. with 4.10.37 it mounts without a >>> problem, with newer kernels the problem exis >>> >>> [ 0.000000] Linux version 4.10.0-37-generic >>> (buildd@lgw01-amd64-037) (gcc version 5.4.0 20160609 (Ubuntu >>> 5.4.0-6ubuntu1~16.04.4) ) #41~16.04.1-Ubuntu SMP Fri Oct 6 22:42:59 >>> UTC 2017 (Ubuntu 4.10.0-37.41~16.04.1-generic 4.10.17) >>> >>> [ 0.000000] Linux version 4.13.9-041309-generic (kernel@tangerine) >>> (gcc version 7.2.0 (Ubuntu 7.2.0-8ubuntu3)) #201710211231 SMP Sat Oct >>> 21 16:32:44 UTC 2017 >>> >>> >>> >>> Thanks, >>> Qu >>> >>> >>>> >>>> >>>> System information >>>> >>>> distribution: Ubuntu 16.04 >>>> btrfs-progs v4.8.1 later upgraded to v4.13.3 >>>> >>>> # btrfs fi usage /mnt/backup >>>> Overall: >>>> Device size: 29.11TiB >>>> Device allocated: 18.04TiB >>>> Device unallocated: 11.07TiB >>>> Device missing: 0.00B >>>> Used: 17.99TiB >>>> Free (estimated): 11.12TiB (min: 5.58TiB) >>>> Data ratio: 1.00 >>>> Metadata ratio: 2.00 >>>> Global reserve: 512.00MiB (used: 0.00B) >>>> >>>> Data,single: Size:17.93TiB, Used:17.88TiB >>>> /dev/sda 17.93TiB >>>> >>>> Metadata,DUP: Size:53.50GiB, Used:51.78GiB >>>> /dev/sda 107.00GiB >>>> >>>> System,DUP: Size:8.00MiB, Used:2.30MiB >>>> /dev/sda 16.00MiB >>>> >>>> Unallocated: >>>> /dev/sda 11.07TiB >>>> >>>> >>>> >>>> >>>> Yours sincerely, >>>> Konstantin V. Gavrilenko >>>> >>>> >>>> -- >>>> To unsubscribe from this list: send the line "unsubscribe >>>> linux-btrfs" in >>>> the body of a message to majord...@vger.kernel.org >>>> More majordomo info at http://vger.kernel.org/majordomo-info.html >>>> >> >> >
signature.asc
Description: OpenPGP digital signature