From: Borislav Petkov <bp@alien8.de>
To: "Ghannam, Yazen" <Yazen.Ghannam@amd.com>
Cc: "linux-edac@vger.kernel.org" <linux-edac@vger.kernel.org>,
Tony Luck <tony.luck@intel.com>,
"x86@kernel.org" <x86@kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2 1/2] x86/mce/AMD: Redo use of SMCA MCA_DE{STAT,ADDR} registers
Date: Wed, 5 Apr 2017 20:22:23 +0200 [thread overview]
Message-ID: <20170405182223.27fzxe27jvinidk6@pd.tnic> (raw)
In-Reply-To: <BN6PR1201MB013183C5B57F496DD5DA5D9FF80A0@BN6PR1201MB0131.namprd12.prod.outlook.com>
On Wed, Apr 05, 2017 at 05:53:57PM +0000, Ghannam, Yazen wrote:
> Correct, but only on SMCA systems.
On !SMCA systems you log only once anyway - you don't have DE* MSRs.
> This works so I don't know why it's not okay.
So I should take the code just because you have found one way that it
works? Screw readability or future proof design - people should dump the
code on maintainers and maintainers should deal with the stinking pile.
Who cares, it works for you.
> Your suggestion also does an SMCA check.
Why TF does that even matter? Enough with the dumb checks argument
already.
> So code that does a check-and-return is preferable to code using
> if/else-if statements? If that's the case then I can try to rework it.
No, readable code matters. Your suggestion is confusing. I see
if (is_deferred_error(status)) {
__log_error
} else if (mce_flags.smca) {
...
if (is_deferred_error(status))
But then here --->
we still deal with deferred errors. Even though we did the deferred
check in the if-clause. And that is confusing and makes the code hard to
follow.
My suggestion does *exactly* what the commit message says:
if (__log_error(..))
goto out;
when we go to the out label, we know we've succeeded logging the
deferred error and we're done.
if (!mce_flags.smca)
return;
When we return here, we know, we've taken care of the !SMCA systems. Now
here starts the second attempt to read the DE* registers and we *know*
we're on SMCA systems.
> How does log_error() know if we can't use the normal MSRs?
MCI_STATUS_VAL.
> We check for MCI_STATUS_VAL in log_error().
Yes.
> We also need to check for MCI_STATUS_DEFERRED but only if we're coming
> from the deferred error handler.
Why? We *are* coming from the #DF handler so are you expecting a
different type of error in the MSRs?
--
Regards/Gruss,
Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
next prev parent reply other threads:[~2017-04-05 18:23 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-04 17:24 Yazen Ghannam
2017-04-04 17:24 ` [PATCH v2 2/2] x86/mce/AMD: Carve out SMCA bank configuration Yazen Ghannam
2017-04-05 14:19 ` Borislav Petkov
2017-04-05 13:39 ` [PATCH v2 1/2] x86/mce/AMD: Redo use of SMCA MCA_DE{STAT,ADDR} registers Borislav Petkov
2017-04-05 14:52 ` Ghannam, Yazen
2017-04-05 16:44 ` Borislav Petkov
2017-04-05 17:06 ` Ghannam, Yazen
2017-04-05 17:22 ` Borislav Petkov
2017-04-05 17:53 ` Ghannam, Yazen
2017-04-05 18:22 ` Borislav Petkov [this message]
2017-04-05 19:29 ` Ghannam, Yazen
2017-04-05 20:04 ` Borislav Petkov
2017-04-07 20:37 ` Ghannam, Yazen
2017-04-07 21:35 ` Borislav Petkov
2017-04-11 12:53 ` Ghannam, Yazen
2017-04-11 13:12 ` Borislav Petkov
2017-04-11 13:18 ` Ghannam, Yazen
2017-04-11 13:24 ` Borislav Petkov
2017-04-11 13:32 ` Ghannam, Yazen
2017-04-11 13:35 ` Borislav Petkov
2017-04-11 13:50 ` Ghannam, Yazen
2017-04-11 13:54 ` Borislav Petkov
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=20170405182223.27fzxe27jvinidk6@pd.tnic \
--to=bp@alien8.de \
--cc=Yazen.Ghannam@amd.com \
--cc=linux-edac@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®