ext4: add mutex_is_locked() assertion to ext4_truncate()
[ Added fixup from Lukáš Czerner which only checks the assertion when the inode is not new and is not being freed. ] Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
This commit is contained in:
parent
819c4920b7
commit
19b5ef6157
1 changed files with 7 additions and 0 deletions
|
@ -3788,6 +3788,13 @@ void ext4_truncate(struct inode *inode)
|
|||
struct address_space *mapping = inode->i_mapping;
|
||||
loff_t page_len;
|
||||
|
||||
/*
|
||||
* There is a possibility that we're either freeing the inode
|
||||
* or it completely new indode. In those cases we might not
|
||||
* have i_mutex locked because it's not necessary.
|
||||
*/
|
||||
if (!(inode->i_state & (I_NEW|I_FREEING)))
|
||||
WARN_ON(!mutex_is_locked(&inode->i_mutex));
|
||||
trace_ext4_truncate_enter(inode);
|
||||
|
||||
if (!ext4_can_truncate(inode))
|
||||
|
|
Loading…
Reference in a new issue