On Saturday 30 Apr 2016 10:05:40 Jonathan Callen wrote:
> On 04/30/2016 09:53 AM, Mick wrote:
> > On Saturday 30 Apr 2016 08:50:55 Alec Ten Harmsel wrote:
> >> On Sat, Apr 30, 2016 at 09:29:08AM +0100, Neil Bothwick wrote:
> >>> On Sat, 30 Apr 2016 09:07:29 +0100, Mick wrote:
> >>>> I seem to have mislaid my microcode somewhere, in the latest stable
> >>>> gentoo kernel:
> >>>> 
> >>>> # grep -i MICROCODE .config
> >>>> #
> >>> 
> >>> Grepping .config is unreliable, and always has been.
> >> 
> >> I usually use something like:
> >>     grep MICROCODE $(find . -name Kconfig)
> >> 
> >> Alec
> > 
> > # grep -i MICROCODE /boot/config-4.4.6-gentoo
> > #
> > # grep -i MICROCODE .config
> > #
> > # grep MICROCODE $(find . -name Kconfig)
> > ./arch/x86/Kconfig:config MICROCODE
> > ./arch/x86/Kconfig:config MICROCODE_INTEL
> > ./arch/x86/Kconfig:     depends on MICROCODE
> > ./arch/x86/Kconfig:     default MICROCODE
> > ./arch/x86/Kconfig:config MICROCODE_AMD
> > ./arch/x86/Kconfig:     depends on MICROCODE
> > ./arch/x86/Kconfig:config MICROCODE_OLD_INTERFACE
> > ./arch/x86/Kconfig:     depends on MICROCODE
> > #
> > 
> > Now you see it ... now you don't!  I am getting really confused.  :-/
> > 
> > Why on this PC the MICROCODE options become available only when I enable
> > INITRD, but on other PCs such a problem does not exist?
> 
> The proper way to load microcode into the kernel is now to have it be
> part of an initramfs (the initramfs doesn't (I think) have to actually
> do anything, just have the microcode firmware in the appropriate
> location).  This is because some things in userspace (like glibc itself)
> only check once for certain CPU features at startup, and newer microcode
> will actually disable some of those features on some CPUs (because they
> are completely broken anyway).  This means that loading the microcode
> before any userspace programs run will ensure that applications like
> /sbin/init won't crash just because a feature they thought they could
> use suddenly disappeared.

Thanks Jonathan for your explanation.  I noticed another machine that loaded 
the MICROCODE as expected, had initrd enabled in the kernel although not used 
for anything else.  I will enable it on this PC too and get on with the next 
job.
-- 
Regards,
Mick

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to