| From f946eeb9313ff1470758e171a60fe7438a2ded3f Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <levinsasha928@gmail.com> |
| Date: Mon, 30 Jan 2012 23:07:22 -0500 |
| Subject: module: Remove module size limit |
| |
| From: Sasha Levin <levinsasha928@gmail.com> |
| |
| commit f946eeb9313ff1470758e171a60fe7438a2ded3f upstream. |
| |
| Module size was limited to 64MB, this was legacy limitation due to vmalloc() |
| which was removed a while ago. |
| |
| Limiting module size to 64MB is both pointless and affects real world use |
| cases. |
| |
| Cc: Tim Abbott <tim.abbott@oracle.com> |
| Signed-off-by: Sasha Levin <sasha.levin@oracle.com> |
| Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| kernel/module.c | 3 +-- |
| 1 file changed, 1 insertion(+), 2 deletions(-) |
| |
| --- a/kernel/module.c |
| +++ b/kernel/module.c |
| @@ -2341,8 +2341,7 @@ static int copy_and_check(struct load_in |
| return -ENOEXEC; |
| |
| /* Suck in entire file: we'll want most of it. */ |
| - /* vmalloc barfs on "unusual" numbers. Check here */ |
| - if (len > 64 * 1024 * 1024 || (hdr = vmalloc(len)) == NULL) |
| + if ((hdr = vmalloc(len)) == NULL) |
| return -ENOMEM; |
| |
| if (copy_from_user(hdr, umod, len) != 0) { |