hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/IAKLNT CVE: NA
--------------------------------
The locks_remove_posix() function is designed to reliably remove locks when an fcntl/close race is detected. However, it was passing in the wrong filelock owner, resulting in a failure to remove locks. More critically, if the lock removal fails, it could lead to a uaf issue while traversing the locks.
Fixes: d985fcea5d18 ("filelock: Fix fcntl/close race recovery compat path") Signed-off-by: Long Li leo.lilong@huawei.com --- fs/locks.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/locks.c b/fs/locks.c index 6bd1fbe42ada..44b5ea4f3c6c 100644 --- a/fs/locks.c +++ b/fs/locks.c @@ -2676,7 +2676,7 @@ int fcntl_setlk64(unsigned int fd, struct file *filp, unsigned int cmd, f = fcheck(fd); spin_unlock(¤t->files->file_lock); if (f != filp) { - locks_remove_posix(filp, ¤t->files); + locks_remove_posix(filp, current->files); error = -EBADF; } }
反馈: 您发送到kernel@openeuler.org的补丁/补丁集,已成功转换为PR! PR链接地址: https://gitee.com/openeuler/kernel/pulls/10940 邮件列表地址:https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/Z...
FeedBack: The patch(es) which you have sent to kernel@openeuler.org mailing list has been converted to a pull request successfully! Pull request link: https://gitee.com/openeuler/kernel/pulls/10940 Mailing list address: https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/Z...