All of lore.kernel.org
 help / color / mirror / Atom feed
From: Borislav Petkov <bp@alien8.de>
To: Gabriele Paoloni <gabriele.paoloni@intel.com>
Cc: tony.luck@intel.com, tglx@linutronix.de, mingo@redhat.com,
	x86@kernel.org, hpa@zytor.com, linux-edac@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-safety@lists.elisa.tech
Subject: Re: [PATCH 2/4] x86/mce: move the mce_panic() call and kill_it assignments at the right places
Date: Mon, 23 Nov 2020 15:27:46 +0100	[thread overview]
Message-ID: <20201123142746.GC15044@zn.tnic> (raw)
In-Reply-To: <20201118151552.1412-3-gabriele.paoloni@intel.com>

On Wed, Nov 18, 2020 at 03:15:50PM +0000, Gabriele Paoloni wrote:
> Right now for local MCEs we panic(),if needed, right after lmce is
> set. For global MCEs mce_reign() takes care of calling mce_panic().
> Hence this patch:
> - improves readibility by moving the conditional evaluation of
> tolerant up to when kill_it is set first
> - moves the mce_panic() call up into the statement where mce_end()
> fails

Pls avoid using "this patch does this and that" in the commit message
but say directly what it does:

- Improve readability ...

- Move mce_panic()...

and so on.

> Signed-off-by: Gabriele Paoloni <gabriele.paoloni@intel.com>
> Reviewed-by: Tony Luck <tony.luck@intel.com>
> ---
>  arch/x86/kernel/cpu/mce/core.c | 21 +++++++++------------
>  1 file changed, 9 insertions(+), 12 deletions(-)
> 
> diff --git a/arch/x86/kernel/cpu/mce/core.c b/arch/x86/kernel/cpu/mce/core.c
> index b990892c6766..e025ff04438f 100644
> --- a/arch/x86/kernel/cpu/mce/core.c
> +++ b/arch/x86/kernel/cpu/mce/core.c
> @@ -1350,8 +1350,7 @@ noinstr void do_machine_check(struct pt_regs *regs)
>  	 * severity is MCE_AR_SEVERITY we have other options.
>  	 */
>  	if (!(m.mcgstatus & MCG_STATUS_RIPV))
> -		kill_it = 1;
> -
> +		kill_it = (cfg->tolerant == 3) ? 0 : 1;

So you just set kill_it using cfg->tolerant...

>  	/*
>  	 * Check if this MCE is signaled to only this logical processor,
>  	 * on Intel, Zhaoxin only.
> @@ -1384,8 +1383,15 @@ noinstr void do_machine_check(struct pt_regs *regs)
>  	 * When there's any problem use only local no_way_out state.
>  	 */
>  	if (!lmce) {
> -		if (mce_end(order) < 0)
> +		if (mce_end(order) < 0) {
>  			no_way_out = no_way_out ? no_way_out : worst >= MCE_PANIC_SEVERITY;
> +			/*
> +			 * mce_reign() has probably failed hence evaluate if we need
> +			 * to panic
> +			 */
> +			if (no_way_out && mca_cfg.tolerant < 3)

... but here you're testing cfg->tolerant again.

why not

			if (no_way_out && kill_it)

?

Thx.

-- 
Regards/Gruss,
    Boris.

https://people.kernel.org/tglx/notes-about-netiquette

WARNING: multiple messages have this Message-ID (diff)
From: Borislav Petkov <bp@alien8.de>
To: Gabriele Paoloni <gabriele.paoloni@intel.com>
Cc: tony.luck@intel.com, tglx@linutronix.de, mingo@redhat.com,
	x86@kernel.org, hpa@zytor.com, linux-edac@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-safety@lists.elisa.tech
Subject: Re: [linux-safety] [PATCH 2/4] x86/mce: move the mce_panic() call and kill_it assignments at the right places
Date: Mon, 23 Nov 2020 15:27:46 +0100	[thread overview]
Message-ID: <20201123142746.GC15044@zn.tnic> (raw)
In-Reply-To: <20201118151552.1412-3-gabriele.paoloni@intel.com>

On Wed, Nov 18, 2020 at 03:15:50PM +0000, Gabriele Paoloni wrote:
> Right now for local MCEs we panic(),if needed, right after lmce is
> set. For global MCEs mce_reign() takes care of calling mce_panic().
> Hence this patch:
> - improves readibility by moving the conditional evaluation of
> tolerant up to when kill_it is set first
> - moves the mce_panic() call up into the statement where mce_end()
> fails

Pls avoid using "this patch does this and that" in the commit message
but say directly what it does:

- Improve readability ...

- Move mce_panic()...

and so on.

> Signed-off-by: Gabriele Paoloni <gabriele.paoloni@intel.com>
> Reviewed-by: Tony Luck <tony.luck@intel.com>
> ---
>  arch/x86/kernel/cpu/mce/core.c | 21 +++++++++------------
>  1 file changed, 9 insertions(+), 12 deletions(-)
> 
> diff --git a/arch/x86/kernel/cpu/mce/core.c b/arch/x86/kernel/cpu/mce/core.c
> index b990892c6766..e025ff04438f 100644
> --- a/arch/x86/kernel/cpu/mce/core.c
> +++ b/arch/x86/kernel/cpu/mce/core.c
> @@ -1350,8 +1350,7 @@ noinstr void do_machine_check(struct pt_regs *regs)
>  	 * severity is MCE_AR_SEVERITY we have other options.
>  	 */
>  	if (!(m.mcgstatus & MCG_STATUS_RIPV))
> -		kill_it = 1;
> -
> +		kill_it = (cfg->tolerant == 3) ? 0 : 1;

So you just set kill_it using cfg->tolerant...

>  	/*
>  	 * Check if this MCE is signaled to only this logical processor,
>  	 * on Intel, Zhaoxin only.
> @@ -1384,8 +1383,15 @@ noinstr void do_machine_check(struct pt_regs *regs)
>  	 * When there's any problem use only local no_way_out state.
>  	 */
>  	if (!lmce) {
> -		if (mce_end(order) < 0)
> +		if (mce_end(order) < 0) {
>  			no_way_out = no_way_out ? no_way_out : worst >= MCE_PANIC_SEVERITY;
> +			/*
> +			 * mce_reign() has probably failed hence evaluate if we need
> +			 * to panic
> +			 */
> +			if (no_way_out && mca_cfg.tolerant < 3)

... but here you're testing cfg->tolerant again.

why not

			if (no_way_out && kill_it)

?

Thx.

-- 
Regards/Gruss,
    Boris.

https://people.kernel.org/tglx/notes-about-netiquette


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#192): https://lists.elisa.tech/g/linux-safety/message/192
Mute This Topic: https://lists.elisa.tech/mt/78342502/5278000
Group Owner: linux-safety+owner@lists.elisa.tech
Unsubscribe: https://lists.elisa.tech/g/linux-safety/unsub [linux-safety@archiver.kernel.org]
-=-=-=-=-=-=-=-=-=-=-=-



  reply	other threads:[~2020-11-23 14:28 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-18 15:15 [PATCH 0/4] x86/MCE: some minor fixes Gabriele Paoloni
2020-11-18 15:15 ` [linux-safety] " Paoloni, Gabriele
2020-11-18 15:15 ` [PATCH 1/4] x86/mce: do not overwrite no_way_out if mce_end() fails Gabriele Paoloni
2020-11-18 15:15   ` [linux-safety] " Paoloni, Gabriele
2020-11-20 17:07   ` Borislav Petkov
2020-11-20 17:07     ` [linux-safety] " Borislav Petkov
2020-11-20 17:31     ` Paoloni, Gabriele
2020-11-20 17:31       ` [linux-safety] " Paoloni, Gabriele
2020-11-20 17:33       ` Borislav Petkov
2020-11-20 17:33         ` [linux-safety] " Borislav Petkov
2020-11-23 14:35         ` Borislav Petkov
2020-11-23 14:35           ` [linux-safety] " Borislav Petkov
2020-11-20 17:32   ` Borislav Petkov
2020-11-20 17:32     ` [linux-safety] " Borislav Petkov
2020-11-20 17:35     ` Paoloni, Gabriele
2020-11-20 17:35       ` [linux-safety] " Paoloni, Gabriele
2020-11-18 15:15 ` [PATCH 2/4] x86/mce: move the mce_panic() call and kill_it assignments at the right places Gabriele Paoloni
2020-11-18 15:15   ` [linux-safety] " Paoloni, Gabriele
2020-11-23 14:27   ` Borislav Petkov [this message]
2020-11-23 14:27     ` Borislav Petkov
2020-11-23 17:06     ` Paoloni, Gabriele
2020-11-23 17:06       ` [linux-safety] " Paoloni, Gabriele
2020-11-23 17:19       ` Borislav Petkov
2020-11-23 17:19         ` [linux-safety] " Borislav Petkov
2020-11-23 17:40         ` Paoloni, Gabriele
2020-11-23 17:40           ` [linux-safety] " Paoloni, Gabriele
2020-11-23 18:07           ` Borislav Petkov
2020-11-23 18:07             ` [linux-safety] " Borislav Petkov
2020-11-18 15:15 ` [PATCH 3/4] x86/mce: for LMCE panic only if mca_cfg.tolerant < 3 Gabriele Paoloni
2020-11-18 15:15   ` [linux-safety] " Paoloni, Gabriele
2020-11-18 15:15 ` [PATCH 4/4] x86/mce: remove redundant call to irq_work_queue() Gabriele Paoloni
2020-11-18 15:15   ` [linux-safety] " Paoloni, Gabriele

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=20201123142746.GC15044@zn.tnic \
    --to=bp@alien8.de \
    --cc=gabriele.paoloni@intel.com \
    --cc=hpa@zytor.com \
    --cc=linux-edac@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-safety@lists.elisa.tech \
    --cc=mingo@redhat.com \
    --cc=tglx@linutronix.de \
    --cc=tony.luck@intel.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 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.