On 2019/10/26 下午9:52, Christian Pernegger wrote: > Am Sa., 26. Okt. 2019 um 11:41 Uhr schrieb Qu Wenruo : >> Thus I put a log tree check in skipbg mount option, and if it detects >> log tree, it refuse to mount and output kernel message to require >> nologreplay. > > No, it doesn't, it asks for notreelog (quoted from a few e-mails back): Exposed a bug! My bad! > >>> [ 1350.402586] BTRFS info (device dm-1): skip mount time block group searching >>> [ 1350.402588] BTRFS info (device dm-1): disk space caching is enabled >>> [ 1350.402589] BTRFS info (device dm-1): has skinny extents >>> [ 1350.402590] BTRFS error (device dm-1): skip_bg must be used with >>> notreelog mount option for dirty log >>> [ 1350.419849] BTRFS error (device dm-1): open_ctree failed >>> >>> Fine by me, let's add "notreelog" as well. Note that "skip_bg" is >>> actually written with an underscore above. > >> Then you can try btrfs-mod-sb, [...] > > Yep, that did the trick. Can mount the fs ro now, access files and it > even reports checksum errors for a couple of them. Promising. Mind to share the csum error log? As you may already find out, certain CRC32 means all zero, and can indicate more trim error for data. Otherwise, indeed looks promising. I'll fix the bug and update the patchset. (Maybe also make btrfs falls back to skipbg by default) Thanks, Qu > > Cheers, > C. >