module: do not print allocation-fail warning on bogus user buffer size
init_module(2) passes user-specified buffer length directly to vmalloc(). It makes warn_alloc_failed() to print out a lot of info into dmesg if user specified insane size, like -1. Let's silence the warning. It doesn't add much value to -ENOMEM return code. Without the patch the syscall is prohibitive noisy for testing with trinity. Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> Cc: Dave Jones <davej@codemonkey.org.uk> Cc: Sasha Levin <sasha.levin@oracle.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
Родитель
7b63c3ab9b
Коммит
cc9e605dc6
|
@ -2494,7 +2494,8 @@ static int copy_module_from_user(const void __user *umod, unsigned long len,
|
|||
return err;
|
||||
|
||||
/* Suck in entire file: we'll want most of it. */
|
||||
info->hdr = vmalloc(info->len);
|
||||
info->hdr = __vmalloc(info->len,
|
||||
GFP_KERNEL | __GFP_HIGHMEM | __GFP_NOWARN, PAGE_KERNEL);
|
||||
if (!info->hdr)
|
||||
return -ENOMEM;
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче