FAILED: patch "[PATCH] ext4: add missing error check in __ext4_new_inode()" failed to apply to 4.9-stable tree
Subsystems (2)
[email protected]
maintainerThe patch below does not apply to the 4.9-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
Quoted 1 line
From
996fc4477a0ea28226b30d175f053fb6f9a4fa36Mon Sep 17 00:00:00 2001
From: Theodore Ts'o <[email protected]>
Date: Sun, 10 Dec 2017 23:44:11 -0500
Subject: [PATCH] ext4: add missing error check in __ext4_new_inode()
It's possible for ext4_get_acl() to return an ERR_PTR. So we need to add a check for this case in __ext4_new_inode(). Otherwise on an error we can end up oops the kernel.
This was getting triggered by xfstests generic/388, which is a test which exercises the shutdown code path.
fs/ext4/ialloc.c +2 -0
@@ -816,6 +816,8 @@ struct inode *__ext4_new_inode(handle_t *handle, struct inode *dir,#ifdef CONFIG_EXT4_FS_POSIX_ACL struct posix_acl *p =get_acl (dir,ACL_TYPE_DEFAULT ); +if (IS_ERR (p)) +return ERR_CAST (p);if (p) {int acl_size = p->a_count *sizeof (ext4_acl_entry);