android_kernel_motorola_sm6225/fs/ext4
zhangyi (F) 67d7b2693f ext4: do not iput inode under running transaction in ext4_rename()
[ Upstream commit 5dccdc5a1916d4266edd251f20bbbb113a5c495f ]

In ext4_rename(), when RENAME_WHITEOUT failed to add new entry into
directory, it ends up dropping new created whiteout inode under the
running transaction. After commit <9b88f9fb0d2> ("ext4: Do not iput inode
under running transaction"), we follow the assumptions that evict() does
not get called from a transaction context but in ext4_rename() it breaks
this suggestion. Although it's not a real problem, better to obey it, so
this patch add inode to orphan list and stop transaction before final
iput().

Signed-off-by: zhangyi (F) <yi.zhang@huawei.com>
Link: https://lore.kernel.org/r/20210303131703.330415-2-yi.zhang@huawei.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-04-07 12:48:48 +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: increase wait time needed before reuse of deleted inode numbers 2020-05-02 17:25:59 +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