Messages in this thread | | | Date | Wed, 1 Feb 2023 13:53:32 +0100 | From | Borislav Petkov <> | Subject | Re: [Patch v3 Part2 3/9] x86/microcode/intel: Fix collect_cpu_info() to reflect current microcode |
| |
On Tue, Jan 31, 2023 at 10:43:23PM +0000, Luck, Tony wrote: > In an ideal world yes. But what if T1 arrives here and tries to do the > update while T0, which has returned out of the microcode update > code and could be doing anything, happen to be doing WRMSR(some MSR > that the ucode update is tinkering with). > > Now T0 explodes (not literally, I hope!) but does something crazy because > it was in the middle of some microcode flow that got updated between two > operations.
So first of all, I'm wondering whether the scenario you're chasing is something completely hypothetical or you're actually thinking of something concrete which has actually happened or there's high potential for it.
In that case, that late patching sync algorithm would need to be made more robust to handle cases like that.
Because from what I'm reading above, this doesn't sound like the reporting is wrong only but more like, if T0 fails the update and T1 gets to do that update for a change, then crap can happen.
Which means, our update dance cannot handle that case properly.
Hmmm...
-- Regards/Gruss, Boris.
https://people.kernel.org/tglx/notes-about-netiquette
| |