diff --git a/[refs] b/[refs] index bcf077fb0088..627643fd2750 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 353eefd3386982ab8f7e14de079ec347dfe05509 +refs/heads/master: 42c832debbbf819f6c4ad8601baa559c44105ba4 diff --git a/trunk/fs/ext4/inode.c b/trunk/fs/ext4/inode.c index 6d051deafc39..09942341dfae 100644 --- a/trunk/fs/ext4/inode.c +++ b/trunk/fs/ext4/inode.c @@ -1061,10 +1061,13 @@ static int ext4_write_end(struct file *file, } } - if (ext4_has_inline_data(inode)) - copied = ext4_write_inline_data_end(inode, pos, len, - copied, page); - else + if (ext4_has_inline_data(inode)) { + ret = ext4_write_inline_data_end(inode, pos, len, + copied, page); + if (ret < 0) + goto errout; + copied = ret; + } else copied = block_write_end(file, mapping, pos, len, copied, page, fsdata);