ext4_getblk() called with map_flags=0 can return NULL,
it can lead to oops on bh dereferemce

Fixes e50e5129f384 ("ext4: xattr-in-inode support")
Cc: sta...@kernel.org # 4.13

Signed-off-by: Vasily Averin <v...@virtuozzo.com>
---
 fs/ext4/xattr.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/fs/ext4/xattr.c b/fs/ext4/xattr.c
index 0b9688683526..6dc6c70828f0 100644
--- a/fs/ext4/xattr.c
+++ b/fs/ext4/xattr.c
@@ -1384,6 +1384,8 @@ static int ext4_xattr_inode_write(handle_t *handle, 
struct inode *ea_inode,
                bh = ext4_getblk(handle, ea_inode, block, 0);
                if (IS_ERR(bh))
                        return PTR_ERR(bh);
+               if (!bh)
+                       return -ENOMEM;
                ret = ext4_journal_get_write_access(handle, bh);
                if (ret)
                        goto out;
-- 
2.17.1


Reply via email to