Linux OS Service ‘microcode_ctl’

Service Name

microcode_ctl

Description

microcode_ctl updates a microcode in IA32 CPU. The microcode is prepared as a file /etc/firmware/microcode.dat. As this service can fix microcode bugs by updating CPU microcode this should be available.m however only for Intel IA32.

Basically, running “service microcode_ctl start” doesn’t start up a daemon, it first checks if the processor is suitable for updating firmware, if it is, then “microcode_ctl” service will insert the module “microcode” into the kernel and creates a device file /dev/cpu/microcode, calls “/sbin/microcode_ctl” to upload the microcode with default data file /etc/firmware/microcode.dat, Then “microcode_ctl” will remove the module “microcode” and device file /dev/cpu/microcode and finally it will report if upload is successful.

The corresponding rpm package is:
microcode_ctl

This is a service not to run any daemon. It uploads microcode to Intel IA32 processor.

Service Control

The microcode update is volatile and needs to be uploaded on each system startup. To control the microcode_ctl service after the next system boot, use the chkconfig utility:

# chkconfig microcode_ctl on
# chkconfig --list microcode_ctl
microcode_ctl 0:off  1:off  2:on   3:on   4:on   5:on   6:off
# chkconfig microcode_ctl off

To control the microcode_ctl service immediately, use the service utility:

# service microcode_ctl
Usage: /etc/init.d/microcode_ctl {start|stop|restart}

The table below describes each of the available commands:

Command Description
start Upload the microcode in /etc/firmware/microcode.data to CPU
restart Same as start
stop It removes the lock file /var/lock/subsys/microcode_ctl which is created by command “start”
Related Post