diff --git a/fs/ext4/inline.c b/fs/ext4/inline.c index 3fcd955372a8..f4eb7e8c3c15 100644 --- a/fs/ext4/inline.c +++ b/fs/ext4/inline.c @@ -716,8 +716,11 @@ int ext4_try_to_write_inline_data(struct address_space *mapping, if (!PageUptodate(page)) { ret = ext4_read_inline_page(inode, page); - if (ret < 0) + if (ret < 0) { + unlock_page(page); + put_page(page); goto out_up_read; + } } ret = 1;