kernel-hacking-2024-linux-s.../fs/ext4
Aneesh Kumar K.V 55bd725aa3 ext4: Fix locking hierarchy violation in ext4_fallocate()
ext4_fallocate() was trying to acquire i_data_sem outside of
jbd2_start_transaction/jbd2_journal_stop, which violates ext4's locking
hierarchy.  So we take i_mutex to prevent writes and truncates during
the complete fallocate operation, and use ext4_get_block_wrap() which
acquires and releases i_data_sem for each block allocation.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Mingming Cao <cmm@us.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2008-02-15 12:47:21 -05:00
..
acl.c
acl.h
balloc.c ext[234]: cleanup ext[234]_bg_num_gdb() 2008-02-06 10:41:21 -08:00
bitmap.c fs: mark nibblemap const 2007-10-17 08:42:47 -07:00
dir.c Remove incorrect BKL comments in ext4 2008-02-25 17:20:46 -05:00
ext4_jbd2.c
extents.c ext4: Fix locking hierarchy violation in ext4_fallocate() 2008-02-15 12:47:21 -05:00
file.c ext4: store maxbytes for bitmapped files and return EFBIG as appropriate 2008-01-28 23:58:27 -05:00
fsync.c ext4: sparse fixes 2007-10-17 18:50:03 -04:00
group.h ext4: add ext4_group_t, and change all group variables to this type. 2008-01-28 23:58:27 -05:00
hash.c
ialloc.c iget: stop EXT4 from using iget() and read_inode() 2008-02-07 08:42:27 -08:00
inode.c Remove incorrect BKL comments in ext4 2008-02-25 17:20:46 -05:00
ioctl.c ext4: Add EXT4_IOC_MIGRATE ioctl 2008-01-28 23:58:26 -05:00
Makefile ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
mballoc.c ext4: allocate struct ext4_allocation_context from a kmem cache 2008-02-10 01:13:33 -05:00
migrate.c ext4: Fix circular locking dependency with migrate and rm. 2008-02-10 01:20:05 -05:00
namei.c ext4: Don't set EXTENTS_FL flag for fast symlinks 2008-02-05 10:56:37 -05:00
namei.h
resize.c iget: stop EXT4 from using iget() and read_inode() 2008-02-07 08:42:27 -08:00
super.c Introduce path_put() 2008-02-14 21:13:33 -08:00
symlink.c
xattr.c ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
xattr.h
xattr_security.c
xattr_trusted.c
xattr_user.c