From: Ingo Molnar <mingo@kernel.org>
To: Dmitry Vyukov <dvyukov@gmail.com>
Cc: tglx@linutronix.de, mingo@redhat.com, x86@kernel.org,
linux-kernel@vger.kernel.org, sergey.senozhatsky.work@gmail.com,
andy.shevchenko@gmail.com, Dmitry Vyukov <dvyukov@google.com>
Subject: Re: [PATCH v3] arch/x86: get rid of KERN_CONT in show_fault_oops()
Date: Tue, 26 Jun 2018 22:05:29 +0200 [thread overview]
Message-ID: <20180626200528.GA29307@gmail.com> (raw)
In-Reply-To: <20180626072843.158906-1-dvyukov@gmail.com>
* Dmitry Vyukov <dvyukov@gmail.com> wrote:
> From: Dmitry Vyukov <dvyukov@google.com>
>
> KERN_CONT leads to split lines in kernel output
> and complicates useful changes to printk like
> printing context before each line.
>
> Only acceptable use of continuations is basically
> boot-time testing.
>
> Get rid of it.
>
> Also tidy up code around as asked by reviewers.
>
> Signed-off-by: Dmitry Vyukov <dvyukov@google.com>
> Reviewed-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
>
> ---
>
> Changes since v1:
> - use pr_alert() instead of printk(KERN_ALERT)
>
> Changes since v2:
> - drop unnecessary parenthesis
> - remove once used nx_warning and smep_warning
> ---
> arch/x86/mm/fault.c | 21 +++++++--------------
> 1 file changed, 7 insertions(+), 14 deletions(-)
>
> diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
> index 9a84a0d08727..a73575cacfd9 100644
> --- a/arch/x86/mm/fault.c
> +++ b/arch/x86/mm/fault.c
> @@ -641,11 +641,6 @@ static int is_f00f_bug(struct pt_regs *regs, unsigned long address)
> return 0;
> }
>
> -static const char nx_warning[] = KERN_CRIT
> -"kernel tried to execute NX-protected page - exploit attempt? (uid: %d)\n";
> -static const char smep_warning[] = KERN_CRIT
> -"unable to execute userspace code (SMEP?) (uid: %d)\n";
> -
> static void
> show_fault_oops(struct pt_regs *regs, unsigned long error_code,
> unsigned long address)
> @@ -664,20 +659,18 @@ show_fault_oops(struct pt_regs *regs, unsigned long error_code,
> pte = lookup_address_in_pgd(pgd, address, &level);
>
> if (pte && pte_present(*pte) && !pte_exec(*pte))
> - printk(nx_warning, from_kuid(&init_user_ns, current_uid()));
> + pr_crit("kernel tried to execute NX-protected page - exploit attempt? (uid: %d)\n",
> + from_kuid(&init_user_ns, current_uid()));
> if (pte && pte_present(*pte) && pte_exec(*pte) &&
> (pgd_flags(*pgd) & _PAGE_USER) &&
> (__read_cr4() & X86_CR4_SMEP))
> - printk(smep_warning, from_kuid(&init_user_ns, current_uid()));
> + pr_crit("unable to execute userspace code (SMEP?) (uid: %d)\n",
> + from_kuid(&init_user_ns, current_uid()));
> }
>
> - printk(KERN_ALERT "BUG: unable to handle kernel ");
> - if (address < PAGE_SIZE)
> - printk(KERN_CONT "NULL pointer dereference");
> - else
> - printk(KERN_CONT "paging request");
> -
> - printk(KERN_CONT " at %px\n", (void *) address);
> + pr_alert("BUG: unable to handle kernel %s at %px\n",
> + address < PAGE_SIZE ? "NULL pointer dereference" :
> + "paging request", (void *) address);
I already applied the last hunk in a bit different way - could you send the rest
as a separate clean-up patch please?
Thanks,
Ingo
next prev parent reply other threads:[~2018-06-26 20:05 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-26 7:28 [PATCH v3] arch/x86: get rid of KERN_CONT in show_fault_oops() Dmitry Vyukov
2018-06-26 17:36 ` Andy Shevchenko
2018-06-26 20:05 ` Ingo Molnar [this message]
2018-06-27 9:07 ` Dmitry Vyukov
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=20180626200528.GA29307@gmail.com \
--to=mingo@kernel.org \
--cc=andy.shevchenko@gmail.com \
--cc=dvyukov@gmail.com \
--cc=dvyukov@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=sergey.senozhatsky.work@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.