android_kernel_motorola_sm6225/fs/ext4
Zhang Yi 7687f5aba0 ext4: fix check to prevent false positive report of incorrect used inodes
commit a149d2a5cabbf6507a7832a1c4fd2593c55fd450 upstream.

Commit <50122847007> ("ext4: fix check to prevent initializing reserved
inodes") check the block group zero and prevent initializing reserved
inodes. But in some special cases, the reserved inode may not all belong
to the group zero, it may exist into the second group if we format
filesystem below.

  mkfs.ext4 -b 4096 -g 8192 -N 1024 -I 4096 /dev/sda

So, it will end up triggering a false positive report of a corrupted
file system. This patch fix it by avoid check reserved inodes if no free
inode blocks will be zeroed.

Cc: stable@kernel.org
Fixes: 5012284700 ("ext4: fix check to prevent initializing reserved inodes")
Signed-off-by: Zhang Yi <yi.zhang@huawei.com>
Suggested-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20210331121516.2243099-1-yi.zhang@huawei.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-05-22 10:59:21 +02:00
..
acl.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
acl.h ext4: fix up remaining files with SPDX cleanups 2017-12-17 22:00:59 -05:00
balloc.c ext4: fix potential race between online resizing and write operations 2020-02-28 16:38:57 +01:00
bitmap.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
block_validity.c ext4: check journal inode extents more carefully 2021-03-20 10:38:34 +01:00
dir.c ext4: fix checksum errors with indexed dirs 2020-02-19 19:51:55 +01:00
ext4.h ext4: check journal inode extents more carefully 2021-03-20 10:38:34 +01:00
ext4_extents.h ext4: fix EXT_MAX_EXTENT/INDEX to check for zeroed eh_max 2020-06-22 09:05:21 +02:00
ext4_jbd2.c ext4: shutdown should not prevent get_write_access 2018-02-18 22:07:36 -05:00
ext4_jbd2.h ext4: use jbd2_inode dirty range scoping 2019-07-28 08:29:29 +02:00
extents.c ext4: check journal inode extents more carefully 2021-03-20 10:38:34 +01:00
extents_status.c ext4: remove NULL check before calling kmem_cache_destroy() 2018-05-20 22:44:13 -04:00
extents_status.h ext4: fix up remaining files with SPDX cleanups 2017-12-17 22:00:59 -05:00
file.c ext4: fix ext4_dax_read/write inode locking sequence for IOCB_NOWAIT 2020-02-24 08:34:35 +01:00
fsmap.c ext4: limit entries returned when counting fsmap records 2020-10-30 10:38:22 +01:00
fsmap.h ext4: fix up remaining files with SPDX cleanups 2017-12-17 22:00:59 -05:00
fsync.c ext4: fix race between ext4_sync_parent() and rename() 2020-06-22 09:05:22 +02:00
hash.c ext4: fix up remaining files with SPDX cleanups 2017-12-17 22:00:59 -05:00
ialloc.c ext4: fix check to prevent false positive report of incorrect used inodes 2021-05-22 10:59:21 +02:00
indirect.c ext4: check journal inode extents more carefully 2021-03-20 10:38:34 +01:00
inline.c ext4: unlock xattr_sem properly in ext4_inline_data_truncate() 2020-11-18 19:18:48 +01:00
inode.c ext4: fix bh ref count on error paths 2021-04-07 12:48:47 +02:00
ioctl.c ext4: fix superblock checksum failure when setting password salt 2021-01-19 18:22:38 +01:00
Kconfig fs/*/Kconfig: drop links to 404-compliant http://acl.bestbits.at 2018-01-01 12:45:37 -07:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mballoc.c ext4: check journal inode extents more carefully 2021-03-20 10:38:34 +01:00
mballoc.h ext4: fix up remaining files with SPDX cleanups 2017-12-17 22:00:59 -05:00
migrate.c ext4: fix race between writepages and enabling EXT4_EXTENTS_FL 2020-02-28 16:38:57 +01:00
mmp.c ext4: don't assume that mmp_nodename/bdevname have NUL 2020-02-19 19:51:55 +01:00
move_extent.c ext4: use jbd2_inode dirty range scoping 2019-07-28 08:29:29 +02:00
namei.c ext4: do not iput inode under running transaction in ext4_rename() 2021-04-07 12:48:48 +02:00
page-io.c ext4: fix deadlock allocating crypto bounce page from mempool 2020-02-11 04:34:16 -08:00
readpage.c ext4: readpages() should submit IO as read-ahead 2018-08-17 16:20:29 -07:00
resize.c ext4: fix error handling code in add_new_gdb 2020-11-05 11:08:53 +01:00
super.c ext4: don't remount read-only with errors=continue on reboot 2021-01-06 14:44:59 +01:00
symlink.c ext4: switch to fscrypt_get_symlink() 2018-01-11 22:10:40 -05:00
sysfs.c for-4.19/block-20180812 2018-08-14 10:23:25 -07:00
truncate.h ext4: handle layout changes to pinned DAX mappings 2018-07-29 17:00:22 -04:00
xattr.c ext4: add reclaim checks to xattr code 2021-03-30 14:37:03 +02:00
xattr.h ext4: add extra checks to ext4_xattr_block_get() 2018-03-30 20:04:11 -04:00
xattr_security.c ext4: use XATTR_CREATE in ext4_initxattrs() 2018-05-10 11:52:14 -04:00
xattr_trusted.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
xattr_user.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00