+1
−0
Loading
stable inclusion from stable-v6.6.45 commit da72e783afd27d9f487836b2e6738146c0edd149 bugzilla: https://gitee.com/openeuler/kernel/issues/IAJEIR Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=da72e783afd27d9f487836b2e6738146c0edd149 -------------------------------- commit 8aa37bde1a7b645816cda8b80df4753ecf172bf1 upstream. both callers have verified that fd is not greater than ->max_fds; however, misprediction might end up with tofree = fdt->fd[fd]; being speculatively executed. That's wrong for the same reasons why it's wrong in close_fd()/file_close_fd_locked(); the same solution applies - array_index_nospec(fd, fdt->max_fds) could differ from fd only in case of speculative execution on mispredicted path. Cc: stable@vger.kernel.org Signed-off-by:Al Viro <viro@zeniv.linux.org.uk> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org> Conflicts: fs/file.c [Context conflicts] Signed-off-by:
ZhangPeng <zhangpeng362@huawei.com>