From: Robin Holt <holt@sgi.com>
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: Robin Holt <holt@sgi.com>, Ingo Molnar <mingo@kernel.org>,
"Srivatsa S. Bhat" <srivatsa.bhat@linux.vnet.ibm.com>,
Russ Anderson <rja@sgi.com>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
the arch/x86 maintainers <x86@kernel.org>
Subject: Re: [PATCH -v5 5/5] Make reboot_cpuid a kernel parameter.
Date: Wed, 17 Apr 2013 19:17:26 -0500 [thread overview]
Message-ID: <20130418001726.GM3658@sgi.com> (raw)
In-Reply-To: <20130417201533.GL3658@sgi.com>
On Wed, Apr 17, 2013 at 03:15:33PM -0500, Robin Holt wrote:
> On Wed, Apr 17, 2013 at 12:59:57PM -0700, H. Peter Anvin wrote:
> > It is also worth noting that the documentation says reboot=s[mp]#
> > whereas in fact only reboot=s# parse correctly. I consider this to be a
> > bug.
> >
> > If we centralized the parser, we could take a string like
> >
> > "reboot=bios,smp32,warm"
> >
> > and parse it into:
> >
> > reboot_cpu = 32
> > reboot_mode = "bw"
> >
> > ... and pass the information in that form to the arch layer. I don't
> > think we can do more parsing at that in the main kernel.
>
> OK. I will go back to the drawing board again.
There are 4 items being parsed out of reboot= for x86:
- reboot_mode w[arm] | c[old]
- reboot_cpu s[mp]####
- reboot_type b[ios] | a[cpi] | k[bd] | t[riple] | e[fi] | p[ci]
- reboot_force f[orce]
This seems like a lot to push into the generic kernel just to make it
appear consistent when there will be no real cross arch consistency.
Contrast that with:
1) New kernel parameter (reboot_cpu) which is clear and concise, uses standard
parsing methods.
2) Backwards compatibility in that a user with an existing (broken) reboot=s32
on the command line will set reboot_cpu unless both were specified, in which
case reboot_cpu takes precedence.
What is so fundamentally wrong with that? It accomplishes exactly what
you had asked for in that existing users are not broken. We are introducing
a new functionality in the general kernel. Why not introduce a new parameter
associated with that functionality.
Thanks,
Robin
next prev parent reply other threads:[~2013-04-18 0:17 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-17 18:43 [PATCH -v5 0/5] Shutdown from reboot_cpuid without stopping other cpus Robin Holt
2013-04-17 18:43 ` [PATCH -v5 1/5] CPU hotplug: Provide a generic helper to disable/enable CPU hotplug Robin Holt
2013-04-17 18:43 ` [PATCH -v5 2/5] Migrate shutdown/reboot to boot cpu Robin Holt
2013-04-17 18:43 ` [PATCH -v5 3/5] Move shutdown/reboot related functions to kernel/reboot.c Robin Holt
2013-04-17 18:43 ` [PATCH -v5 4/5] checkpatch.pl the new kernel/reboot.c file Robin Holt
2013-04-17 19:13 ` Robin Holt
2013-04-17 18:43 ` [PATCH -v5 5/5] Make reboot_cpuid a kernel parameter Robin Holt
2013-04-17 19:37 ` H. Peter Anvin
2013-04-17 19:48 ` Robin Holt
2013-04-17 19:55 ` H. Peter Anvin
2013-04-17 19:59 ` H. Peter Anvin
2013-04-17 20:15 ` Robin Holt
2013-04-18 0:17 ` Robin Holt [this message]
2013-04-18 0:28 ` H. Peter Anvin
2013-04-18 0:39 ` H. Peter Anvin
2013-04-18 1:25 ` Robin Holt
2013-04-18 2:04 ` Robin Holt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130418001726.GM3658@sgi.com \
--to=holt@sgi.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=rja@sgi.com \
--cc=srivatsa.bhat@linux.vnet.ibm.com \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox