All of lore.kernel.org
 help / color / mirror / Atom feed
From: Smita Koralahalli Channabasappa <skoralah@amd.com>
To: Smita Koralahalli <Smita.KoralahalliChannabasappa@amd.com>,
	x86@kernel.org, linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org
Cc: Tony Luck <tony.luck@intel.com>,
	"H . Peter Anvin" <hpa@zytor.com>,
	Yazen Ghannam <yazen.ghannam@amd.com>,
	Muralidhara M K <muralimk@amd.com>,
	Akshay Gupta <Akshay.Gupta@amd.com>,
	Youquan Song <youquan.song@intel.com>,
	Zhen Lei <thunder.leizhen@huawei.com>
Subject: Re: [PATCH 1/2] x86/mce: Define function to extract ErrorAddr from MCA_ADDR
Date: Mon, 13 Sep 2021 14:19:33 -0500	[thread overview]
Message-ID: <eb77b76f-742e-c9b5-982c-00f293a1620a@amd.com> (raw)
In-Reply-To: <20210625013341.231442-1-Smita.KoralahalliChannabasappa@amd.com>

Hi all,

Do you have any other comments which I need to address on these set of patches?

On 6/24/21 8:33 PM, Smita Koralahalli wrote:

> Move MCA_ADDR[ErrorAddr] extraction into a separate helper function. This
> will be further refactored in the next patch.
>
> Signed-off-by: Smita Koralahalli <Smita.KoralahalliChannabasappa@amd.com>
> ---
> v2:
> 	- No change.
> ---
>   arch/x86/include/asm/mce.h     |  2 ++
>   arch/x86/kernel/cpu/mce/amd.c  | 14 +++++++++-----
>   arch/x86/kernel/cpu/mce/core.c |  7 ++-----
>   3 files changed, 13 insertions(+), 10 deletions(-)
>
> diff --git a/arch/x86/include/asm/mce.h b/arch/x86/include/asm/mce.h
> index 0607ec4f5091..0a1c7224a582 100644
> --- a/arch/x86/include/asm/mce.h
> +++ b/arch/x86/include/asm/mce.h
> @@ -357,6 +357,7 @@ extern int mce_threshold_remove_device(unsigned int cpu);
>   
>   void mce_amd_feature_init(struct cpuinfo_x86 *c);
>   int umc_normaddr_to_sysaddr(u64 norm_addr, u16 nid, u8 umc, u64 *sys_addr);
> +void smca_extract_err_addr(struct mce *m);
>   
>   #else
>   
> @@ -366,6 +367,7 @@ static inline bool amd_mce_is_memory_error(struct mce *m)		{ return false; };
>   static inline void mce_amd_feature_init(struct cpuinfo_x86 *c)		{ }
>   static inline int
>   umc_normaddr_to_sysaddr(u64 norm_addr, u16 nid, u8 umc, u64 *sys_addr)	{ return -EINVAL; };
> +static inline void smca_extract_err_addr(struct mce *m)			{ }
>   #endif
>   
>   static inline void mce_hygon_feature_init(struct cpuinfo_x86 *c)	{ return mce_amd_feature_init(c); }
> diff --git a/arch/x86/kernel/cpu/mce/amd.c b/arch/x86/kernel/cpu/mce/amd.c
> index 08831acc1d03..f71435e53cdb 100644
> --- a/arch/x86/kernel/cpu/mce/amd.c
> +++ b/arch/x86/kernel/cpu/mce/amd.c
> @@ -899,6 +899,13 @@ bool amd_mce_is_memory_error(struct mce *m)
>   	return m->bank == 4 && xec == 0x8;
>   }
>   
> +void smca_extract_err_addr(struct mce *m)
> +{
> +	u8 lsb = (m->addr >> 56) & 0x3f;
> +
> +	m->addr &= GENMASK_ULL(55, lsb);
> +}
> +
>   static void __log_error(unsigned int bank, u64 status, u64 addr, u64 misc)
>   {
>   	struct mce m;
> @@ -917,11 +924,8 @@ static void __log_error(unsigned int bank, u64 status, u64 addr, u64 misc)
>   		 * Extract [55:<lsb>] where lsb is the least significant
>   		 * *valid* bit of the address bits.
>   		 */
> -		if (mce_flags.smca) {
> -			u8 lsb = (m.addr >> 56) & 0x3f;
> -
> -			m.addr &= GENMASK_ULL(55, lsb);
> -		}
> +		if (mce_flags.smca)
> +			smca_extract_err_addr(&m);
>   	}
>   
>   	if (mce_flags.smca) {
> diff --git a/arch/x86/kernel/cpu/mce/core.c b/arch/x86/kernel/cpu/mce/core.c
> index bf7fe87a7e88..2c09c1eec50a 100644
> --- a/arch/x86/kernel/cpu/mce/core.c
> +++ b/arch/x86/kernel/cpu/mce/core.c
> @@ -703,11 +703,8 @@ static void mce_read_aux(struct mce *m, int i)
>   		 * Extract [55:<lsb>] where lsb is the least significant
>   		 * *valid* bit of the address bits.
>   		 */
> -		if (mce_flags.smca) {
> -			u8 lsb = (m->addr >> 56) & 0x3f;
> -
> -			m->addr &= GENMASK_ULL(55, lsb);
> -		}
> +		if (mce_flags.smca)
> +			smca_extract_err_addr(m);
>   	}
>   
>   	if (mce_flags.smca) {

  parent reply	other threads:[~2021-09-13 19:19 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-25  1:33 [PATCH 1/2] x86/mce: Define function to extract ErrorAddr from MCA_ADDR Smita Koralahalli
2021-06-25  1:33 ` [PATCH 2/2] x86/mce: Add support for Extended Physical Address MCA changes Smita Koralahalli
2021-07-13 16:21   ` Yazen Ghannam
2021-07-13 16:10 ` [PATCH 1/2] x86/mce: Define function to extract ErrorAddr from MCA_ADDR Yazen Ghannam
2021-09-13 19:19 ` Smita Koralahalli Channabasappa [this message]
2021-10-08 16:45   ` Borislav Petkov
  -- strict thread matches above, loose matches on Subject: below --
2021-06-08 22:10 [PATCH 0/2] x86/mce: Support extended MCA_ADDR address on SMCA systems Smita Koralahalli
2021-06-08 22:10 ` [PATCH 1/2] x86/mce: Define function to extract ErrorAddr from MCA_ADDR Smita Koralahalli

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=eb77b76f-742e-c9b5-982c-00f293a1620a@amd.com \
    --to=skoralah@amd.com \
    --cc=Akshay.Gupta@amd.com \
    --cc=Smita.KoralahalliChannabasappa@amd.com \
    --cc=hpa@zytor.com \
    --cc=linux-edac@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=muralimk@amd.com \
    --cc=thunder.leizhen@huawei.com \
    --cc=tony.luck@intel.com \
    --cc=x86@kernel.org \
    --cc=yazen.ghannam@amd.com \
    --cc=youquan.song@intel.com \
    /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.