[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Y2uODnpkSvQs/nbU@zn.tnic>
Date: Wed, 9 Nov 2022 12:25:02 +0100
From: Borislav Petkov <bp@...en8.de>
To: Ashok Raj <ashok.raj@...el.com>
Cc: Thomas Gleixner <tglx@...utronix.de>,
LKML Mailing List <linux-kernel@...r.kernel.org>,
X86-kernel <x86@...nel.org>, Tony Luck <tony.luck@...el.com>,
Dave Hansen <dave.hansen@...el.com>,
Arjan van de Ven <arjan.van.de.ven@...el.com>,
Andy Lutomirski <luto@...nel.org>,
Jacon Jun Pan <jacob.jun.pan@...el.com>,
Tom Lendacky <thomas.lendacky@....com>,
Kai Huang <kai.huang@...el.com>,
Andrew Cooper <andrew.cooper3@...rix.com>
Subject: Re: [v2 03/13] x86/microcode/intel: Fix a hang if early loading
microcode fails
On Thu, Nov 03, 2022 at 05:58:51PM +0000, Ashok Raj wrote:
> When early loading of microcode fails for any reason other than the wrong
> family-model-stepping, Linux can get into an infinite loop retrying the
> same failed load.
>
> A single retry is needed to handle any mixed stepping case.
>
> Assume we have a microcode that fails to load for some reason.
> load_ucode_ap() seems to retry if the loading fails. But it searches for
Seems to retry because we were supporting mixed revisions. Which we do
not now.
And if you say "seems" then this sounds like the problem hasn't been
analyzed properly. If this can happen with the current code, then this
needs to be fixed in stable. So, how do you trigger exactly?
I'd like to reproduce it myself.
As to this patch: it should simply be removing the retrying instead of
doing silly crap like
bool retried = false;
...
In light of how a lot has changed since last time, yes, please redo the
patchset ontop of tip:x86/microcode, keeping in mind now that we don't
support mixed revisions anymore.
Just like dhansen said, you can split it in fixes and new features so
that it is not too many patches at once - your call.
Thx.
--
Regards/Gruss,
Boris.
https://people.kernel.org/tglx/notes-about-netiquette
Powered by blists - more mailing lists