On Tue 2020-11-03 22:40:25, Matteo Croce wrote: > From: Matteo Croce <mcr...@microsoft.com> > > Small improvements to the code, without changing the way it works: > - use a local variable, to avoid a small time lapse where reboot_cpu > can have an invalid value > - comment the code which is not easy to understand at a glance > - merge two identical code blocks into one > - replace pointer arithmetics with equivalent array syntax > > Signed-off-by: Matteo Croce <mcr...@microsoft.com> > --- > kernel/reboot.c | 30 +++++++++++++++++------------- > 1 file changed, 17 insertions(+), 13 deletions(-) > > diff --git a/kernel/reboot.c b/kernel/reboot.c > index af6f23d8bea1..dd483bde932b 100644 > --- a/kernel/reboot.c > +++ b/kernel/reboot.c > @@ -551,20 +551,24 @@ static int __init reboot_setup(char *str) > break; > > case 's': > - if (isdigit(*(str+1))) > - reboot_cpu = simple_strtoul(str+1, NULL, 0); > - else if (str[1] == 'm' && str[2] == 'p' && > - isdigit(*(str+3))) > - reboot_cpu = simple_strtoul(str+3, NULL, 0); > - else > + /* > + * reboot_cpu is s[mp]#### with #### being the processor > + * to be used for rebooting. Skip 's' or 'smp' prefix. > + */ > + str += str[1] == 'm' && str[2] == 'p' ? 3 : 1; > + > + if (isdigit(str[0])) { > + int cpu = simple_strtoul(str, NULL, 0); > + > + if (cpu >= num_possible_cpus()) { > + pr_err("Ignoring the CPU number in > reboot= option. " > + "CPU %d exceeds possible cpu number > %d\n",
Same here. I am not sure if Andrew would like to get this on a single line. In both cases: Reviewed-by: Petr Mladek <pmla...@suse.com> Best Regards, Petr