On 24.07.2023 18:52, Alejandro Vallejo wrote: > Some hypervisors report ~0 as the microcode revision to mean "don't issue > microcode updates". Ignore the microcode loading interface in that case. > > Signed-off-by: Alejandro Vallejo <alejandro.vall...@cloud.com> > Reviewed-by: Jan Beulich <jbeul...@suse.com>
Hmm. > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -867,10 +867,23 @@ int __init early_microcode_init(unsigned long > *module_map, > return -ENODEV; > } > > - microcode_grab_module(module_map, mbi); > - > ucode_ops.collect_cpu_info(); > > + /* > + * Some hypervisors deliberately report a microcode revision of -1 to > + * mean that they will not accept microcode updates. We take the hint > + * and ignore the microcode interface in that case. > + */ > + if ( this_cpu(cpu_sig).rev == ~0 ) > + { > + printk(XENLOG_INFO "Microcode loading disabled due to: %s", While we have tentatively agreed to adjust what _will_ be emitted by default (subject to suitable justification in that change's description), such a patch is yet to be sent. As it stands this message will be invisible by default. > + "HW toggle"); With the comment talking about hypervisors, what is this string supposed to tell an observer of the message in a log file? Jan