Messages in this thread | | | Date | Thu, 5 Nov 2020 19:09:53 +0100 | From | Petr Mladek <> | Subject | Re: [PATCH v3 3/3] reboot: refactor and comment the cpu selection code |
| |
On Tue 2020-11-03 22:40:25, Matteo Croce wrote: > From: Matteo Croce <mcroce@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 <mcroce@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 <pmladek@suse.com>
Best Regards, Petr
| |