diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 0757f6a6455fdb7797be34bf16a3a76639e4d5e3..243a2a23015e8ac2287ddf5dceccc4a6cacf21e3 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c @@ -1294,7 +1294,8 @@ static int ext4_write_end(struct file *file, trace_ext4_write_end(inode, pos, len, copied); - if (ext4_has_inline_data(inode)) + if (ext4_has_inline_data(inode) && + ext4_test_inode_state(inode, EXT4_STATE_MAY_INLINE_DATA)) return ext4_write_inline_data_end(inode, pos, len, copied, page); copied = block_write_end(file, mapping, pos, len, copied, page, fsdata);