From: Denis Roy <denisjroy@gmail.com>
To: Qu Wenruo <quwenruo.btrfs@gmx.com>, Qu Wenruo <wqu@suse.com>
Cc: dsterba@suse.cz, linux-btrfs@vger.kernel.org
Subject: Re: BTRFS critical (device md126): corrupt node: root=1 block=13404298215424 slot=307, unaligned pointer, have 12567101254720864896 should be aligned to 4096
Date: Fri, 8 Jul 2022 21:34:51 -0400 [thread overview]
Message-ID: <d7276c15-37d5-d4e5-cab5-0e2703216a95@gmail.com> (raw)
In-Reply-To: <c7c50f16-92de-c9d2-d665-40f9556c6c80@gmx.com>
Love to comply to run the latest version, but I past from my
experiences. Maybe you could help me on update/upgrading so I can do the
check. I trying to learn here, need some help
On 2022-07-08 3:04 a.m., Qu Wenruo wrote:
>
>
> On 2022/7/8 14:20, Denis Roy wrote:
>> Ok, great. How do I do that?
>
> Considering you're using a vendor specific firmware/hardware, I don't
> have any good suggestion, other than upgrade to the latest version the
> vendor provides, and hope they upgraded the kernel.
>
> Or you may want to jump into the rabbit hole of running a common distro
> on the NAS hardware so that you have full control of the system, but
> lose all the out-of-box experience provided by those NAS vendors.
>
>
> For the corrupted fs, you may want to run btrfs check (latest version
> recommended) and post it.
> Then we may be able to decide if the fs can be repaired properly.
>
> Thanks,
> Qu
>>
>> Sent from my iPhone
>>
>>> On Jul 8, 2022, at 2:01 AM, Qu Wenruo <wqu@suse.com> wrote:
>>>
>>>
>>>
>>>> On 2022/7/8 13:50, Denis Roy wrote:
>>>> key (7652251795456 EXTENT_ITEM 72057594063093760) block
>>>> 12567101254720864896 (383517494345729) gen 72340209471334675
>>>> key (2959901138859622420 EXTENT_CSUM 3664676558733568) block
>>>> 2234066886193184768 (68178310735876) gen 18374696375462128179
>>>> key (1153765929541501184 EXTENT_CSUM 0) block 0 (0) gen 0
>>>> key (0 UNKNOWN.0 0) block 0 (0) gen 0
>>>
>>> The above dump shows the tree node is completely corrupted by some
>>> weird data.
>>>
>>> The offending slot is not aligned, and its offset (extent size for
>>> EXTENT_ITEM) is definitely not correct.
>>>
>>> But the offset looks like a bitflip:
>>>
>>> hex(72057594063093760) = '0x100000001800000'
>>>
>>> Ignoring the high bit, 0x1800000 is completely sane for the size of
>>> an data extent.
>>>
>>> The next slot even has incorrect type, (EXTENT_CSUM) should not
>>> occur in
>>> extent tree, but this time I can not find a pattern in the corrupted
>>> type.
>>>
>>> The offset, 3664676558733568, is also not aligned but without a
>>> solid corruption pattern.
>>>
>>> And finally we have an UNKNOWN key, which should not occur there at
>>> all.
>>>
>>>
>>> So this looks like that tree node is by somehow screwed up in the
>>> middle.
>>> I don't have any clue how this could happen, but considering the
>>> checksum still passed, it must happen at runtime.
>>>
>>>
>>> For now, I can only recommend to go kernel newer than 5.11 which
>>> introduced mandatory write-time tree block sanity check, and should
>>> reject such bad tree block before it can be written to disk.
>>>
>>> Thanks,
>>> Qu
next prev parent reply other threads:[~2022-07-09 1:34 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-07 1:32 BTRFS critical (device md126): corrupt node: root=1 block=13404298215424 slot=307, unaligned pointer, have 12567101254720864896 should be aligned to 4096 Denis Roy
2022-07-07 2:19 ` Qu Wenruo
2022-07-07 16:56 ` David Sterba
2022-07-08 5:50 ` Denis Roy
2022-07-08 6:00 ` Qu Wenruo
2022-07-08 6:20 ` Denis Roy
2022-07-08 7:04 ` Qu Wenruo
2022-07-09 1:34 ` Denis Roy [this message]
2022-07-09 1:48 ` Qu Wenruo
2022-07-09 1:53 ` Denis Roy
2022-07-07 19:56 ` Denis Roy
2022-07-09 2:16 ` Denis Roy
2022-07-09 2:18 ` Qu Wenruo
2022-07-09 2:20 ` Denis Roy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d7276c15-37d5-d4e5-cab5-0e2703216a95@gmail.com \
--to=denisjroy@gmail.com \
--cc=dsterba@suse.cz \
--cc=linux-btrfs@vger.kernel.org \
--cc=quwenruo.btrfs@gmx.com \
--cc=wqu@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).