On Wed, Oct 06, 2021 at 01:17:32PM +0100, Matthew Wilcox wrote: > finit_module() is not the only caller of kernel_read_file_from_fd() > which passes it a fd that userspace passed in, for example > kexec_file_load() doesn't validate the fd either. We could validate > the fd in individual syscalls, in kernel_read_file_from_fd() > or just do what vfs_read() does and return -EBADF without warning. My suggestion would be to do both, and keep a WARN() in __kernel_read(), since that should never happen (and we want a stack trace if it does). - Ted