- NetBSD Manual Pages
CPUCTL(8) NetBSD System Manager's Manual CPUCTL(8)
Powered by man-cgi (2021-06-01).
Maintained for NetBSD
by Kimmo Suominen.
Based on man-cgi by Panagiotis Christias.
cpuctl -- program to control CPUs
cpuctl [-v] command [arguments]
The cpuctl command can be used to control and inspect the state of CPUs
in the system.
The first argument, command, specifies the action to take. Valid com-
identify cpu [cpu ...]
Output information on the specified CPU's features and capabil-
ities. Not available on all architectures.
list For each CPU in the system, display the current state and time
of the last state change.
offline cpu [cpu ...]
Set the specified CPUs off line.
Unbound LWPs (lightweight processes) will not be executed on a
CPU while it is off line. Bound LWPs will continue to be exe-
cuted on the CPUs, and device interrupts routed to the CPUs
will continue to be handled. A future release of the system
may allow device interrupts to be re-routed away from individ-
At least one CPU in the system must remain on line.
online cpu [cpu ...]
Set the specified CPUs on line, making them available to run
ucode [cpu] [file]
This applies the microcode patch to CPUs. Unless -v was given,
errors indicating that the microcode already exists on the CPU
in question are ignored. If cpu is not specified or -1, all
CPUs are updated. If cpu is -2, the current CPUs are updated.
The default filename is used if no filename is specified. The
identify command prints the installed version on the specified
CPUs. On success the identify command shows different ucode
versions before and after this command. The ucode updates are
found in the default firmware path found in sysctl
intr cpu [cpu ...]
Enable interrupts for the specified CPUs if supported.
nointr cpu [cpu ...]
Disable interrupts for the specified CPUs if supported.
Valid flags are:
-v Be more verbose.
/dev/cpuctl control device
The directory to install the microcode file for AMD CPUs
into. The default filename is microcode_amd.bin for CPU
families 0x10 to 0x14. The default filename is
microcode_amd_famXXh.bin where XX is the CPU family starting
with 15 (hex). Get it from
cpuctl identify 0
and you should see something like this:
cpu0: UCode version: 0x1000080
After applying the microcode patch with
cpuctl ucode 0
you can see with
cpuctl identify 0
that the patch got applied:
cpu0: UCode version: 0x1000083
intrctl(8), psrset(8), schedctl(8), sysctl(8), firmload(9)
The cpuctl command first appeared in NetBSD 5.0.
NetBSD 10.99 May 17, 2019 NetBSD 10.99