From: Ingo Molnar <mingo@kernel.org>
To: "Odzioba, Lukasz" <lukasz.odzioba@intel.com>
Cc: Borislav Petkov <bp@alien8.de>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"tglx@linutronix.de" <tglx@linutronix.de>,
"mingo@redhat.com" <mingo@redhat.com>,
"hpa@zytor.com" <hpa@zytor.com>,
"x86@kernel.org" <x86@kernel.org>,
"luto@kernel.org" <luto@kernel.org>,
"slaoub@gmail.com" <slaoub@gmail.com>, "bp@suse.de" <bp@suse.de>,
"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>,
"Kleen, Andi" <andi.kleen@intel.com>,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [PATCH 1/1] x86: sanitize argument of clearcpuid command-line option
Date: Tue, 17 Jan 2017 08:17:39 +0100 [thread overview]
Message-ID: <20170117071738.GA3041@gmail.com> (raw)
In-Reply-To: <D6EDEBF1F91015459DB866AC4EE162CC02538168@IRSMSX103.ger.corp.intel.com>
* Odzioba, Lukasz <lukasz.odzioba@intel.com> wrote:
> > pr_warn("x86/cpu: Ignoring invalid "clearcpuid=%s' option!\n", arg)
> >
> > Which would save quite a bit of head scratching and frustration when someone has a
> > bad enough day to add silly typos to the kernel cmdline.
>
> Is there any particular reason why we have such warnings only for early params?
> early_param handlers return non-zero values on success:
> linux/init.h: " * Emits warning if fn returns non-zero."
> __setup handlers in most cases seem to return 1 on success, is the expected
> behaviour documented somewhere?
>
> After looking at some of the ~500 usages of __setup macro it seems that handler's ret
> code doesn't matter so much, because it is treated differently in various parts
> of the kernel. If we make it consistent possibly it could be solved similarly to
> early params by something like this:
>
> diff --git a/init/main.c b/init/main.c
> index b0c9d6f..261178e 100644
> --- a/init/main.c
> +++ b/init/main.c
> @@ -182,8 +182,12 @@ static bool __init obsolete_checksetup(char *line)
> pr_warn("Parameter %s is obsolete, ignored\n",
> p->str);
> return true;
> - } else if (p->setup_func(line + n))
> - return true;
> + } else {
> + if (p->setup_func(line + n))
> + return true;
> + else
> + pr_warn("Malformed option '%s'\n", line);
> + }
That looks sensible to me! I'd tweak the message slightly:
pr_warn("error: Ignoring invalid boot parameter '%s'\n", line);
to make it more clear that it's a boot option that has a problem (there are many
other types of options), and to make sure the user knows that we ignored that
option.
Mind sending this as a proper patch, with akpm Cc:-ed?
Thanks,
Ingo
next prev parent reply other threads:[~2017-01-17 7:17 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-28 13:55 Lukasz Odzioba
2016-12-29 10:21 ` Borislav Petkov
2017-01-05 7:55 ` Ingo Molnar
2017-01-16 18:50 ` Odzioba, Lukasz
2017-01-17 7:17 ` Ingo Molnar [this message]
2017-01-18 9:52 ` Odzioba, Lukasz
2017-01-05 15:04 ` [tip:x86/urgent] x86/cpu: Fix bootup crashes by sanitizing the argument of the 'clearcpuid=' " tip-bot for Lukasz Odzioba
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=20170117071738.GA3041@gmail.com \
--to=mingo@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=andi.kleen@intel.com \
--cc=bp@alien8.de \
--cc=bp@suse.de \
--cc=dave.hansen@linux.intel.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lukasz.odzioba@intel.com \
--cc=luto@kernel.org \
--cc=mingo@redhat.com \
--cc=slaoub@gmail.com \
--cc=tglx@linutronix.de \
--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
Powered by JetHome