diff options
Diffstat (limited to 'kernel/reboot.c')
-rw-r--r-- | kernel/reboot.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/kernel/reboot.c b/kernel/reboot.c index 2cd16bef5e19..2946ed1d99d4 100644 --- a/kernel/reboot.c +++ b/kernel/reboot.c @@ -519,6 +519,13 @@ static int __init reboot_setup(char *str) reboot_cpu = simple_strtoul(str+3, NULL, 0); else reboot_mode = REBOOT_SOFT; + if (reboot_cpu >= num_possible_cpus()) { + pr_err("Ignoring the CPU number in reboot= option. " + "CPU %d exceeds possible cpu number %d\n", + reboot_cpu, num_possible_cpus()); + reboot_cpu = 0; + break; + } break; case 'g': |