diff options
Diffstat (limited to 'target/linux/generic/pending-4.14/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch')
-rw-r--r-- | target/linux/generic/pending-4.14/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/target/linux/generic/pending-4.14/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch b/target/linux/generic/pending-4.14/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch deleted file mode 100644 index 6cbaf28e81..0000000000 --- a/target/linux/generic/pending-4.14/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch +++ /dev/null @@ -1,51 +0,0 @@ -From: Martin Blumenstingl <martin.blumenstingl@googlemail.com> -To: linux-f2fs-devel@lists.sourceforge.net, yuchao0@huawei.com, - jaegeuk@kernel.org -Subject: [PATCH v2 1/1] f2fs: fix validation of the block count in - sanity_check_raw_super -Date: Sat, 22 Dec 2018 11:22:26 +0100 -Message-Id: <20181222102226.10050-2-martin.blumenstingl@googlemail.com> - -Treat "block_count" from struct f2fs_super_block as 64-bit little endian -value in sanity_check_raw_super() because struct f2fs_super_block -declares "block_count" as "__le64". - -This fixes a bug where the superblock validation fails on big endian -devices with the following error: - F2FS-fs (sda1): Wrong segment_count / block_count (61439 > 0) - F2FS-fs (sda1): Can't find valid F2FS filesystem in 1th superblock - F2FS-fs (sda1): Wrong segment_count / block_count (61439 > 0) - F2FS-fs (sda1): Can't find valid F2FS filesystem in 2th superblock -As result of this the partition cannot be mounted. - -With this patch applied the superblock validation works fine and the -partition can be mounted again: - F2FS-fs (sda1): Mounted with checkpoint version = 7c84 - -My little endian x86-64 hardware was able to mount the partition without -this fix. -To confirm that mounting f2fs filesystems works on big endian machines -again I tested this on a 32-bit MIPS big endian (lantiq) device. - -Fixes: 0cfe75c5b01199 ("f2fs: enhance sanity_check_raw_super() to avoid potential overflows") -Cc: stable@vger.kernel.org -Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> -Reviewed-by: Chao Yu <yuchao0@huawei.com> ---- - ---- a/fs/f2fs/super.c -+++ b/fs/f2fs/super.c -@@ -1897,10 +1897,10 @@ static int sanity_check_raw_super(struct - return 1; - } - -- if (segment_count > (le32_to_cpu(raw_super->block_count) >> 9)) { -+ if (segment_count > (le64_to_cpu(raw_super->block_count) >> 9)) { - f2fs_msg(sb, KERN_INFO, -- "Wrong segment_count / block_count (%u > %u)", -- segment_count, le32_to_cpu(raw_super->block_count)); -+ "Wrong segment_count / block_count (%u > %llu)", -+ segment_count, le64_to_cpu(raw_super->block_count)); - return 1; - } - |