View previous topic :: View next topic |
Author |
Message |
CaptainBlood Advocate
Joined: 24 Jan 2010 Posts: 3596
|
Posted: Tue Jul 29, 2014 2:25 am Post subject: Is kernel cpu µcode module useful here?[SOLVED] |
|
|
Hi dear all,
I have Quote: | dmesg | grep microcode
[ 7.838128] microcode: CPU0 sig=0x1067a, pf=0x80, revision=0xa07
[ 7.844869] microcode: CPU1 sig=0x1067a, pf=0x80, revision=0xa07
[ 7.844961] microcode: Microcode Update Driver: v2.00 <tigran@aivazian.fsnet.co.uk>, Peter Oruba | Is my Core 2 Duo patched?
If it is, do i need 2 keep µcode module in memory, or can I unload it with CPU remaining patched?
my 2 cents answers would be N & Y.but i'd like your advice before I remove µcode from my kernel.
Thks 4 ur attention
Last edited by CaptainBlood on Wed Jul 30, 2014 3:25 am; edited 1 time in total |
|
Back to top |
|
|
netixen n00b
Joined: 26 Sep 2013 Posts: 31
|
Posted: Tue Jul 29, 2014 1:06 pm Post subject: |
|
|
Ahoy, Matey!
The module loads the updated microcode after every reboot.
It doesn't use any resources after that so you don't need to unload it. In fact
If you have a custom kernel just compile it in since if you boot with the module disabled,
your microcode will be factory default and that is not what you want.
Savvy? |
|
Back to top |
|
|
CaptainBlood Advocate
Joined: 24 Jan 2010 Posts: 3596
|
Posted: Tue Jul 29, 2014 4:17 pm Post subject: |
|
|
So if I understand you correctly my dmesg trace tells µcode has been patched.
Furthermore, i thought microcode module was a module witch function is to load µcode into the CPU.
If I get it right the module is the microcode itself.
If that reaveals to be the case, no doubt it should be beneficial to include it directly into the kernel instead.
It that it?
Thks 4 ur attention, interest & support. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54220 Location: 56N 3W
|
Posted: Tue Jul 29, 2014 6:35 pm Post subject: |
|
|
CaptainBlood
The microcode is present in the CPU in ROM.
This ROM is too slow to run at the CPU core clock speed, so its copied to RAM (inside the CPU).
At each boot the kernel module can update the RAM based microcode copy.
You need to provide the microcode separately - it is not part of the module.
Its not clear from your dmesg if its reporting the original microcode version or the new version. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
CaptainBlood Advocate
Joined: 24 Jan 2010 Posts: 3596
|
Posted: Tue Jul 29, 2014 7:08 pm Post subject: |
|
|
Hi again,
Thks Ned 4 ur explanations.
Took me a while 2 find it, as I was missing the right keywords;
finally got more procedural @ http://wiki.gentoo.org/wiki/Intel_microcode
I'm wondering, still, if the kernel module & the microcode_ctl can/should be unloaded / stopped once the job has been done.
EDIT:If I got it right, module is required, microcode_ctl can be stopped., now investigating @ https://blog.flameeyes.eu/2011/01/microupdates-for-microcodesEOE
Thks 4 ur attention, interest & support. |
|
Back to top |
|
|
netixen n00b
Joined: 26 Sep 2013 Posts: 31
|
Posted: Tue Jul 29, 2014 11:41 pm Post subject: |
|
|
CaptainBlood wrote: | Hi again,
I'm wondering, still, if the kernel module & the microcode_ctl can/should be unloaded / stopped once the job has been done.
|
Hey CaptainBlood.
You add microcode_ctl to your boot runlevel and that's it. Look at the openrc runscript below:
Code: |
start() {
local ret
# Make sure the kernel supports the microcode device ...
# if it doesnt, try to modprobe the kernel module
grep -qs ' microcode$' /proc/misc || modprobe -q microcode
ebegin "Updating microcode"
microcode_ctl -qu -f /lib/firmware/microcode.dat -d ${MICROCODE_DEV}
ret=$?
eend ${ret} "Failed to update microcode via '${MICROCODE_DEV}'"
[ "${MICROCODE_UNLOAD}" = "yes" ] && rmmod microcode >/dev/null 2>&1
return ${ret}
}
|
As you can see the runscript just makes sure the module is loaded, the right microcode loaded and even removes the module after the microcode is updated.
You should see something similar in dmesg as a result:
Code: |
[ 0.123319] microcode: CPU0 sig=0x1067a, pf=0x80, revision=0xa07
[ 0.123372] microcode: CPU1 sig=0x1067a, pf=0x80, revision=0xa07
[ 0.123459] microcode: Microcode Update Driver: v2.00 <tigran@aivazian.fsnet.co.uk>, Peter Oruba
[ 55.767720] microcode: CPU0 sig=0x1067a, pf=0x80, revision=0xa07
[ 55.768003] microcode: CPU0 updated to revision 0xa0b, date = 2010-09-28
[ 55.773810] microcode: CPU1 sig=0x1067a, pf=0x80, revision=0xa07
[ 55.774803] microcode: CPU1 updated to revision 0xa0b, date = 2010-09-28
|
|
|
Back to top |
|
|
CaptainBlood Advocate
Joined: 24 Jan 2010 Posts: 3596
|
Posted: Wed Jul 30, 2014 3:23 am Post subject: |
|
|
Hi,
Thks netixen 4 ur explanations.
As you mentioned, microcode module is indeed removed after µcode update performed by microcode_ctl.
4 the record, Quote: | emerge microcode-data | is also required, as it is not mentioned in the gentoo wiki referred above.
Thks ur attention, interest & support. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|