On 01.10.2019 8:35, Qu Wenruo wrote:
I recommend to do a "btrfs check" on all fses.

I had done "btrfs check" on /dev/sda4:

attached btrfs-check-sda4.output

There are some errors. How to fix them?

It looks like "btrfs check --repair" can handle most of these bugs.

Please do a backup and try repair.

I ran "btrfs check --repair":

$ btrfs check -p --repair sda4.image.copy
enabling repair mode
Opening filesystem to check...
Checking filesystem on sda4.image.copy
UUID: a942b8da-e92d-4348-8de9-ded1e5e095ad
[1/7] checking root items                      (0:00:07 elapsed, 509893 items 
checked)
Fixed 0 roots.
backref bytes do not match extent backref, bytenr=1985052672, ref bytes=20480, 
backref bytes=86016
backpointer mismatch on [1985052672 20480]
attempting to repair backref discrepency for bytenr 1985052672
backref bytes do not match extent backref, bytenr=1985052672, ref bytes=20480, 
backref bytes=86016
backpointer mismatch on [1985052672 20480]
attempting to repair backref discrepency for bytenr 1985052672
backref bytes do not match extent backref, bytenr=1985052672, ref bytes=20480, 
backref bytes=86016
backpointer mismatch on [1985052672 20480]
attempting to repair backref discrepency for bytenr 1985052672
backref bytes do not match extent backref, bytenr=1985052672, ref bytes=20480, 
backref bytes=86016
backpointer mismatch on [1985052672 20480]
attempting to repair backref discrepency for bytenr 1985052672
backref bytes do not match extent backref, bytenr=1985052672, ref bytes=20480, 
backref bytes=86016
backpointer mismatch on [1985052672 20480]
attempting to repair backref discrepency for bytenr 1985052672

After 27 hours of work, I interrupted it:

backref bytes do not match extent backref, bytenr=1985052672, ref bytes=20480, 
backref bytes=86016
backpointer mismatch on [1985052672 20480]
attempting to repair backref discrepency for bytenr 1985052672
backref bytes do not match extent backref, bytenr=1985052672, ref bytes=20480, 
backref bytes=86016
backpointer mismatch on [1985052672 20480]
attempting to repair backref discrepency for bytenr 1985052672
backref bytes do not match extent backref, bytenr=1985052672, ref bytes=20480, 
backref bytes=86016
backpointer mismatch on [1985052672 20480]
attempting to repair backref discrepency for bytenr 1985052672
backref bytes do not match extent backref, bytenr=1985052672, ref bytes=20480, 
backref bytes=86016
backpointer mismatch on [1985052672 20480]
attempting to repair backref discrepency for bytenr 1985052672
checking extents                         (27:48:52 elapsed, 3363526296 items 
checked)

I think "btrfs check" is looped somewhere. Or not?

Reply via email to