ANDROID: incfs: Add check for ATTR_KILL_SUID and ATTR_MODE in incfs_setattr

Add an explicite check for ATTR_KILL_SUID and ATTR_MODE in incfs_setattr.
Both of these attributes can not be set at the same time, otherwise
notify_change() function will check it and invoke BUG(), crashing
the system.

Bug: 243394930

Signed-off-by: Tadeusz Struk <tadeusz.struk@linaro.org>
Change-Id: I91080d68efbd62f1441e20a5c02feef3d1b06e4e
This commit is contained in:
Tadeusz Struk
2022-09-13 10:56:54 -07:00
committed by Todd Kjos
parent d915364e92
commit bcf6dddd97

View File

@@ -1592,6 +1592,10 @@ static int incfs_setattr(struct dentry *dentry, struct iattr *ia)
if (ia->ia_valid & ATTR_SIZE)
return -EINVAL;
if ((ia->ia_valid & (ATTR_KILL_SUID|ATTR_KILL_SGID)) &&
(ia->ia_valid & ATTR_MODE))
return -EINVAL;
if (!di)
return -EINVAL;
backing_dentry = di->backing_path.dentry;