[PATCH v2 0/1] f2fs: fix sanity_check_raw_super on big endian machines

From: Martin Blumenstingl
Date: Sat Dec 22 2018 - 12:50:45 EST


Big endian machines (at least the one I have access to) cannot mount
f2fs filesystems anymore.
This is with Linux 4.14.89 but I suspect that 4.9.144 (and later) is
affected as well.

commit 0cfe75c5b01199 ("f2fs: enhance sanity_check_raw_super() to avoid
potential overflows") treats the "block_count" from struct
f2fs_super_block as 32-bit little endian value instead of a 64-bit
little endian value.

I tested this fix on top of Linux 4.14.49 but it seems that all stable
and mainline kernel versions are affected:
- 4.9.144 and later because 0cfe75c5b01199 was backported there
- 4.14.86 and later because 0cfe75c5b01199 was backported there
- 4.19
- 4.20-rcX


changes since v1 at [0]:
- change the printk format for block_count from "%u" to "%llu" (thanks
to "kbuild test robot" for spotting this)
- added Chao Yu's reviewed by


[0] https://lore.kernel.org/patchwork/cover/1027285/


Martin Blumenstingl (1):
f2fs: fix validation of the block count in sanity_check_raw_super

fs/f2fs/super.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

--
2.20.1