diff options
author | Theodore Ts'o <tytso@mit.edu> | 2023-05-23 23:49:51 -0400 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2023-05-30 15:33:57 -0400 |
commit | aff3bea95388299eec63440389b4545c8041b357 (patch) | |
tree | 669708b2e170f2e9097040fcf334c17c5b6bc010 /fs/ext4/ext4.h | |
parent | 2bc7e7c1a3bc9bd0cbf0f71006f6fe7ef24a00c2 (diff) | |
download | lwn-aff3bea95388299eec63440389b4545c8041b357.tar.gz lwn-aff3bea95388299eec63440389b4545c8041b357.zip |
ext4: add lockdep annotations for i_data_sem for ea_inode's
Treat i_data_sem for ea_inodes as being in their own lockdep class to
avoid lockdep complaints about ext4_setattr's use of inode_lock() on
normal inodes potentially causing lock ordering with i_data_sem on
ea_inodes in ext4_xattr_inode_write(). However, ea_inodes will be
operated on by ext4_setattr(), so this isn't a problem.
Cc: stable@kernel.org
Link: https://syzkaller.appspot.com/bug?extid=298c5d8fb4a128bc27b0
Reported-by: syzbot+298c5d8fb4a128bc27b0@syzkaller.appspotmail.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Link: https://lore.kernel.org/r/20230524034951.779531-5-tytso@mit.edu
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/ext4.h')
-rw-r--r-- | fs/ext4/ext4.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h index 9525c52b78dc..8104a21b001a 100644 --- a/fs/ext4/ext4.h +++ b/fs/ext4/ext4.h @@ -918,11 +918,13 @@ do { \ * where the second inode has larger inode number * than the first * I_DATA_SEM_QUOTA - Used for quota inodes only + * I_DATA_SEM_EA - Used for ea_inodes only */ enum { I_DATA_SEM_NORMAL = 0, I_DATA_SEM_OTHER, I_DATA_SEM_QUOTA, + I_DATA_SEM_EA }; |