Re: missing patch

From: Greg KH
Date: Fri Aug 02 2019 - 04:16:04 EST


On Sun, May 26, 2019 at 10:32:29AM +0300, Evalds Iodzevics wrote:
> Hi, sorry for super long delay i was a little bit busy but i finally
> got time to work this out in full.
> This applies to 4.4 and 4.9.
>
> Intel requires CPUID eax=1 for microcode operations, microcode
> routines use sync_core() for this.
> Back in December of 2016 Andy Lutomirski submitted few patches
> https://lore.kernel.org/lkml/cover.1481307769.git.luto@xxxxxxxxxx/
>
> Second patch does not apply to 4.4 and 4.9 as it is revert
>
> Unfortunately only the first one got backported to 4.4 and 4.9 and
> broke microcode early loading on 32 bit platforms because it always
> jumps past cpuid in sync_core() as data structure boot_cpu_data are
> not populated so early in code.
>
> Thanks to Your recent backport of 4167709bbf826512a52ebd6aafda2be104adaec9
> the only place that uses sync_core() is
> arch/x86/include/microcode_intel.h it should use native_cpuid_eax(1)
> as in original Boris submitt.
> To make this work we should apply
> 5dedade6dfa243c130b85d1e4daba6f027805033 witch defines
> native_cpuid_eax and others.
>
> As for c198b121b1a1d7a7171770c634cd49191bac4477 i think it is a good
> idea to include this as sync_core in present state behaves differently
> depending on call time, those compiler warnings can be ignored, on
> older compiler they are not generated and this compiles fine. I tested
> it on GCC 5.5

Can you submit the proper patches backported as a series so that I can
queue them up correctly?

thanks,

greg k-h