linux/fs/ext4
Jan Kara 05c2c00f37 ext4: protect superblock modifications with a buffer lock
Protect all superblock modifications (including checksum computation)
with a superblock buffer lock. That way we are sure computed checksum
matches current superblock contents (a mismatch could cause checksum
failures in nojournal mode or if an unjournalled superblock update races
with a journalled one). Also we avoid modifying superblock contents
while it is being written out (which can cause DIF/DIX failures if we
are running in nojournal mode).

Signed-off-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20201216101844.22917-4-jack@suse.cz
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2020-12-22 13:08:46 -05:00
..
acl.c ext4: main fast-commit commit path 2020-10-21 23:22:37 -04:00
acl.h ext4: fix up remaining files with SPDX cleanups 2017-12-17 22:00:59 -05:00
balloc.c ext4: use ASSERT() to replace J_ASSERT() 2020-12-03 09:36:57 -05: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: standardize error message in ext4_protect_reserved_inode() 2020-12-17 13:30:55 -05:00
dir.c ext4: use generic casefolding support 2020-10-28 13:43:13 -04:00
ext4_extents.h ext4: fix EXT_MAX_EXTENT/INDEX to check for zeroed eh_max 2020-06-03 23:16:49 -04:00
ext4_jbd2.c ext4: protect superblock modifications with a buffer lock 2020-12-22 13:08:46 -05:00
ext4_jbd2.h ext4: add helpers for checking whether quota can be enabled/is journalled 2020-12-03 09:18:48 -05:00
ext4.h ext4: remove unnecessary wbc parameter from ext4_bio_write_page 2020-12-22 13:08:45 -05:00
extents_status.c ext4: fast commit recovery path 2020-10-21 23:22:38 -04:00
extents_status.h ext4: fix extent_status trace points 2020-01-25 02:03:03 -05:00
extents.c ext4: fix an IS_ERR() vs NULL check 2020-12-17 13:30:32 -05:00
fast_commit.c ext4: make fast_commit.h byte identical with e2fsprogs/fast_commit.h 2020-12-17 13:30:45 -05:00
fast_commit.h ext4: make fast_commit.h byte identical with e2fsprogs/fast_commit.h 2020-12-17 13:30:45 -05:00
file.c ext4: protect superblock modifications with a buffer lock 2020-12-22 13:08:46 -05:00
fsmap.c jbd2: rename j_maxlen to j_total_len and add jbd2_journal_max_txn_bufs 2020-11-06 23:01:02 -05:00
fsmap.h ext4: fix up remaining files with SPDX cleanups 2017-12-17 22:00:59 -05:00
fsync.c ext4: use ASSERT() to replace J_ASSERT() 2020-12-03 09:36:57 -05:00
hash.c ext4: use generic casefolding support 2020-10-28 13:43:13 -04:00
ialloc.c The siginificant new ext4 feature this time around is Harshad's new 2020-10-22 10:31:08 -07:00
indirect.c ext4: use ASSERT() to replace J_ASSERT() 2020-12-03 09:36:57 -05:00
inline.c ext4: unlock xattr_sem properly in ext4_inline_data_truncate() 2020-11-06 22:52:36 -05:00
inode-test.c kunit: allow kunit tests to be loaded as a module 2020-01-09 16:42:29 -07:00
inode.c ext4: protect superblock modifications with a buffer lock 2020-12-22 13:08:46 -05:00
ioctl.c ext4: fast commit recovery path 2020-10-21 23:22:38 -04:00
Kconfig ext4: replace HTTP links with HTTPS ones 2020-08-06 01:01:57 -04:00
Makefile ext4 / jbd2: add fast commit initialization 2020-10-21 23:22:26 -04:00
mballoc.c ext4: avoid s_mb_prefetch to be zero in individual scenarios 2020-12-22 13:08:45 -05:00
mballoc.h ext4: limit the length of per-inode prealloc list 2020-08-19 12:04:36 -04:00
migrate.c ext4: handle ext4_mark_inode_dirty errors 2020-06-03 23:16:50 -04:00
mmp.c ext4: use common helpers in all places reading metadata buffers 2020-10-18 10:37:14 -04:00
move_extent.c ext4: use common helpers in all places reading metadata buffers 2020-10-18 10:37:14 -04:00
namei.c ext4: protect superblock modifications with a buffer lock 2020-12-22 13:08:46 -05:00
page-io.c ext4: remove unnecessary wbc parameter from ext4_bio_write_page 2020-12-22 13:08:45 -05:00
readpage.c Improvements to ext4's block allocator performance for very large file 2020-08-21 11:03:38 -07:00
resize.c ext4: protect superblock modifications with a buffer lock 2020-12-22 13:08:46 -05:00
super.c ext4: protect superblock modifications with a buffer lock 2020-12-22 13:08:46 -05:00
symlink.c ext4: switch to fscrypt_get_symlink() 2018-01-11 22:10:40 -05:00
sysfs.c ext4: indicate that fast_commit is available via /sys/fs/ext4/feature/... 2020-10-28 13:43:22 -04:00
truncate.h ext4: handle layout changes to pinned DAX mappings 2018-07-29 17:00:22 -04:00
verity.c mm/readahead: make page_cache_ra_unbounded take a readahead_control 2020-10-16 11:11:16 -07:00
xattr_hurd.c ext4: support xattr gnu.* namespace for the Hurd 2020-06-12 13:23:34 -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
xattr.c ext4: protect superblock modifications with a buffer lock 2020-12-22 13:08:46 -05:00
xattr.h ext4: support xattr gnu.* namespace for the Hurd 2020-06-12 13:23:34 -04:00