diff options
| author | Harshad Shirwadkar <harshadshirwadkar@gmail.com> | 2025-05-08 17:59:00 +0000 |
|---|---|---|
| committer | Theodore Ts'o <tytso@mit.edu> | 2025-05-08 21:56:17 -0400 |
| commit | 834224e81cdc265456f73fed748a349e43e2d8ef (patch) | |
| tree | fd4e7d7ba171eb4f6c2f150803cebbfabf814c0c /fs/ext4/ext4.h | |
| parent | b4432656b36e5cc1d50a1f2dc15357543add530e (diff) | |
ext4: convert i_fc_lock to spinlock
Convert ext4_inode_info->i_fc_lock to spinlock to avoid sleeping
in invalid contexts.
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Harshad Shirwadkar <harshadshirwadkar@gmail.com>
Link: https://patch.msgid.link/20250508175908.1004880-2-harshadshirwadkar@gmail.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/ext4.h')
| -rw-r--r-- | fs/ext4/ext4.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h index 5a20e9cd7184..79dfb57a7046 100644 --- a/fs/ext4/ext4.h +++ b/fs/ext4/ext4.h @@ -1069,8 +1069,11 @@ struct ext4_inode_info { /* Fast commit wait queue for this inode */ wait_queue_head_t i_fc_wait; - /* Protect concurrent accesses on i_fc_lblk_start, i_fc_lblk_len */ - struct mutex i_fc_lock; + /* + * Protect concurrent accesses on i_fc_lblk_start, i_fc_lblk_len + * and inode's EXT4_FC_STATE_COMMITTING state bit. + */ + spinlock_t i_fc_lock; /* * i_disksize keeps track of what the inode size is ON DISK, not |