Re: tree-checker read time corruption

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 2020/2/12 下午10:20, telsch wrote:
> 
> 
> On 2/12/20 1:41 AM, Qu Wenruo wrote:
>>
>>
>> On 2020/2/11 下午10:17, telsch wrote:
>>> Dear devs,
>>>
>>>
>>>
>>> after upgrading from kernel 4.19.101 to 5.5.2 i got read time tree block
>>> error as
>>>
>>> described here:
>>>
>>>      https://btrfs.wiki.kernel.org/index.php/Tree-checker#For_end_users
>>>
>>>
>>>
>>> Working with kernel 4.19.101:
>>>
>>>
>>>
>>> Linux Arch 4.19.101-1-lts #1 SMP Sat, 01 Feb 2020 16:35:36 +0000 x86_64
>>> GNU/Linux
>>>
>>>
>>>
>>> btrfs --version
>>>
>>> btrfs-progs v5.4
>>>
>>>
>>>
>>> btrfs fi show
>>>
>>> Label: none  uuid: 56e753f4-1346-49ad-a34f-e93a0235b82a
>>>
>>>          Total devices 1 FS bytes used 92.54GiB
>>>
>>>          devid    1 size 95.14GiB used 95.14GiB path /dev/mapper/home
>>>
>>>
>>>
>>> btrfs fi df /home
>>>
>>> Data, single: total=94.11GiB, used=91.95GiB
>>>
>>> System, single: total=31.00MiB, used=12.00KiB
>>>
>>> Metadata, single: total=1.00GiB, used=599.74MiB
>>>
>>> GlobalReserve, single: total=199.32MiB, used=0.00B
>>>
>>>
>>>
>>> After upgrading to kernel 5.5.2:
>>>
>>>
>>>
>>> [   13.413025] BTRFS: device fsid 56e753f4-1346-49ad-a34f-e93a0235b82a
>>> devid 1 transid 468295 /dev/dm-1 scanned by systemd-udevd (417)
>>>
>>> [   13.589952] BTRFS info (device dm-1): force zstd compression, level 3
>>>
>>> [   13.589956] BTRFS info (device dm-1): disk space caching is enabled
>>>
>>> [   13.594707] BTRFS info (device dm-1): bdev /dev/mapper/home errs: wr
>>> 0, rd 47, flush 0, corrupt 0, gen 0
>>>
>>> [   13.622912] BTRFS info (device dm-1): enabling ssd optimizations
>>>
>>> [   13.624300] BTRFS critical (device dm-1): corrupt leaf: root=5
>>> block=122395779072 slot=10 ino=265, invalid inode generation: has
>>> 18446744073709551492 expect [0, 468296]
>>
>> An older kernel caused underflow/garbage generation.
>> Much strict tree checker is detecting it and rejecting the tree block to
>> prevent further corruption.
>>
>> It can be fixed in by btrfs-progs v5.4 and later, by using 'btrfs check
>> --repair'
>>
>> Early btrfs-progs can't detect nor fix it.
>>
>> Thanks,
>> Qu
>>
> 
> As you suggest booting to kernel 5.5.3 with btrfs-progs v5.4 and run
> 'btrfs check --repair'. But didn't fix this error.
> 
> mount: /home: can't read superblock on /dev/mapper/home.
> [  325.121475] BTRFS info (device dm-1): force zstd compression, level 3
> [  325.121482] BTRFS info (device dm-1): disk space caching is enabled
> [  325.126234] BTRFS info (device dm-1): bdev /dev/mapper/home errs: wr
> 0, rd 47, flush 0, corrupt 0, gen 0
> [  325.143521] BTRFS info (device dm-1): enabling ssd optimizations
> [  325.146138] BTRFS critical (device dm-1): corrupt leaf: root=5
> block=122395779072 slot=10 ino=265, invalid inode generation: has
> 18446744073709551492 expect [0, 469820]
> [  325.148637] BTRFS error (device dm-1): block=122395779072 read time
> tree block corruption detected

According to the repair log, btrfs-progs doesn't detect it at all.
Thus I'm not sure if it's a bug in btrfs-progs or it's just not newer
enough.

Anyway, you can delete inode 265 manually using older kernel.

Thanks,
Qu
> 
>>>
>>> [   13.624381] BTRFS error (device dm-1): block=122395779072 read time
>>> tree block corruption detected
>>>
>>>
>>>
>>>
>>>
>>> Booting from 4.19 kernel can mount fs again.
>>

Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux