linux-stable/fs/ext4
Jan Kara 4013d47a53 ext4: make sure to reset inode lockdep class when quota enabling fails
When we succeed in enabling some quota type but fail to enable another
one with quota feature, we correctly disable all enabled quota types.
However we forget to reset i_data_sem lockdep class. When the inode gets
freed and reused, it will inherit this lockdep class (i_data_sem is
initialized only when a slab is created) and thus eventually lockdep
barfs about possible deadlocks.

Reported-and-tested-by: syzbot+3b6f9218b1301ddda3e2@syzkaller.appspotmail.com
Signed-off-by: Jan Kara <jack@suse.cz>
Cc: stable@kernel.org
Link: https://lore.kernel.org/r/20211007155336.12493-3-jack@suse.cz
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2022-01-10 13:25:55 -05:00
..
.kunitconfig
acl.c ext4: use ext4_journal_start/stop for fast commit transactions 2021-12-23 18:13:25 -05:00
acl.h vfs: add rcu argument to ->get_acl() callback 2021-08-18 22:08:24 +02:00
balloc.c ext4: flush background discard kwork when retry allocation 2021-08-30 23:35:53 -04:00
bitmap.c
block_validity.c
dir.c ext4: fix potential infinite loop in ext4_dx_readdir() 2021-10-01 00:05:09 -04:00
ext4.h ext4: destroy ext4_fc_dentry_cachep kmemcache on module removal 2022-01-10 13:25:54 -05:00
ext4_extents.h ext4: fix sparse warnings 2021-08-30 23:36:50 -04:00
ext4_jbd2.c ext4: Support for checksumming from journal triggers 2021-08-30 23:36:50 -04:00
ext4_jbd2.h ext4: Support for checksumming from journal triggers 2021-08-30 23:36:50 -04:00
extents.c ext4: fix fast commit may miss tracking range for FALLOC_FL_ZERO_RANGE 2022-01-10 13:25:44 -05:00
extents_status.c
extents_status.h
fast_commit.c ext4: destroy ext4_fc_dentry_cachep kmemcache on module removal 2022-01-10 13:25:54 -05:00
fast_commit.h ext4: simplify updating of fast commit stats 2021-12-23 18:13:25 -05:00
file.c ext4: use ext4_journal_start/stop for fast commit transactions 2021-12-23 18:13:25 -05:00
fsmap.c
fsmap.h
fsync.c
hash.c
ialloc.c ext4: Support for checksumming from journal triggers 2021-08-30 23:36:50 -04:00
indirect.c ext4: Support for checksumming from journal triggers 2021-08-30 23:36:50 -04:00
inline.c ext4: remove extent cache entries when truncating inline data 2021-09-09 10:52:05 -04:00
inode-test.c
inode.c ext4: fast commit may miss tracking unwritten range during ftruncate 2022-01-10 13:25:54 -05:00
ioctl.c ext4: drop ineligible txn start stop APIs 2021-12-23 18:13:25 -05:00
Kconfig
Makefile ext4: Move orphan inode handling into a separate file 2021-08-30 23:36:51 -04:00
mballoc.c ext4: scope ret locally in ext4_try_to_trim_range() 2021-11-04 10:33:25 -04:00
mballoc.h
migrate.c
mmp.c ext4: fix potential uninitialized access to retval in kmmpd 2021-07-23 07:31:29 -04:00
move_extent.c
namei.c ext4: fix boolreturn.cocci warnings in fs/ext4/name.c 2021-11-04 10:33:25 -04:00
orphan.c ext4: Improve scalability of ext4 orphan file handling 2021-08-30 23:36:51 -04:00
page-io.c ext4: convert from atomic_t to refcount_t on ext4_io_end->count 2021-11-04 10:33:24 -04:00
readpage.c
resize.c ext4: Support for checksumming from journal triggers 2021-08-30 23:36:50 -04:00
super.c ext4: make sure to reset inode lockdep class when quota enabling fails 2022-01-10 13:25:55 -05:00
symlink.c ext4: report correct st_size for encrypted symlinks 2021-07-25 20:01:06 -07:00
sysfs.c
truncate.h ext4: Convert to use mapping->invalidate_lock 2021-07-13 14:29:00 +02:00
verity.c
xattr.c ext4: Support for checksumming from journal triggers 2021-08-30 23:36:50 -04:00
xattr.h
xattr_hurd.c
xattr_security.c
xattr_trusted.c
xattr_user.c