On Tue, May 21, 2019 at 01:34:42AM -0700, Erik Jensen wrote: > I have a 5-drive btrfs filesystem. (raid-5 data, dup metadata). I can > mount it fine on my x86_64 system, and running `btrfs check` there > reveals no errors. However, I am not able to mount the filesystem on > my 32-bit ARM board, which I am hoping to use for lower-power file > serving. dmesg shows the following: > > [ 83.066301] BTRFS info (device dm-3): disk space caching is enabled > [ 83.072817] BTRFS info (device dm-3): has skinny extents > [ 83.553973] BTRFS error (device dm-3): bad tree block start, want > 17628726968320 have 396461950000496896 > [ 83.554089] BTRFS error (device dm-3): bad tree block start, want > 17628727001088 have 5606876608493751477 > [ 83.601176] BTRFS error (device dm-3): bad tree block start, want > 17628727001088 have 5606876608493751477 > [ 83.610811] BTRFS error (device dm-3): failed to verify dev extents > against chunks: -5 > [ 83.639058] BTRFS error (device dm-3): open_ctree failed > > Is this expected to work? I did notice that there are gotchas on the > wiki related to filesystems over 8TiB on 32-bit systems, but it > sounded like they were mostly related to running the tools, as opposed > to the filesystem driver itself. (Each of the five drives is > 8TB/7.28TiB) Yes, it should work. We had problems with ARM several years ago, because of its unusual behaviour with unaligned word accesses, but those were in userspace, and, as far as I know, fixed now. Looking at the want/have numbers, it doesn't look like an endianness problem or an ARM-unaligned-access problem. > If this isn't expected, what should I do to help track down the issue? Can you show us the output of "btrfs check --readonly", on both the x86_64 machine and the ARM machine? It might give some more insight into the nature of the breakage. Possibly also "btrfs inspect dump-super" on both machines. > Also potentially relevant: The x86_64 system is currently running > 4.19.27, while the ARM system is running 5.1.3. Shouldn't make a difference. > Finally, just in case it's relevant, I just finished reencrypting the > array, which involved doing a `btrfs replace` on each device in the > array. If you can still mount on x86_64, then the FS is at least reasonably complete and undamaged. I don't think this will make a difference. However, it's worth checking whether there are any funnies about your encryption layer on ARM (I wouldn't expect any, since it's recognising the decrypted device as btrfs, rather than random crud). Hugo. -- Hugo Mills | Prisoner unknown: Return to Zenda. hugo@... carfax.org.uk | http://carfax.org.uk/ | PGP: E2AB1DE4 |