Commit 77eed821 authored by Kamal Mostafa's avatar Kamal Mostafa Committed by Ingo Molnar

x86: Fix panic when handling "mem={invalid}" param

Avoid removing all of memory and panicing when "mem={invalid}"
is specified, e.g. mem=blahblah, mem=0, or mem=nopentium (on
platforms other than x86_32).
Signed-off-by: default avatarKamal Mostafa <kamal@canonical.com>
BugLink: http://bugs.launchpad.net/bugs/553464
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Len Brown <len.brown@intel.com>
Cc: Rafael J. Wysocki <rjw@sisk.pl>
Cc: <stable@kernel.org> # .3x: as far back as it applies
LKML-Reference: <1296783486-23033-1-git-send-email-kamal@canonical.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 7064d865
...@@ -856,6 +856,9 @@ static int __init parse_memopt(char *p) ...@@ -856,6 +856,9 @@ static int __init parse_memopt(char *p)
userdef = 1; userdef = 1;
mem_size = memparse(p, &p); mem_size = memparse(p, &p);
/* don't remove all of memory when handling "mem={invalid}" param */
if (mem_size == 0)
return -EINVAL;
e820_remove_range(mem_size, ULLONG_MAX - mem_size, E820_RAM, 1); e820_remove_range(mem_size, ULLONG_MAX - mem_size, E820_RAM, 1);
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment