freebsd-nq/usr.sbin
Andriy Gapon 0112b52b61 Add support for microcode update on newer AMD CPUs (10h+)
This includes new code for parsing microcode files as well as
the kernel-side change to apply the update on all processors
at the same time.

Developed with help from Borislav Petkov, formerly bp@amd64.org.

Tested using Athlon II X2 processor on a system where BIOS does
not have the latest microcode version:
/boot/firmware/microcode_amd.bin: updating cpu /dev/cpuctl0 to revision 0x10000c7... done.

The microcode file is taken from here:
https://web.archive.org/web/20160528230514/http://www.amd64.org/microcode.html
(note that the original site seems to be down at the moment)
It can also be found here:
https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/tree/amd-ucode

Reviewed by:	kib, stas
MFC after:	2 weeks
Relnotes:	maybe
Differential Revision: https://reviews.freebsd.org/D8384
2016-11-02 16:15:49 +00:00
..
ac
accton
acpi Merge ACPICA 20160930. 2016-10-04 20:27:15 +00:00
adduser
amd Align whitespace. 2016-10-22 22:29:03 +00:00
ancontrol ancontrol(8): replace comma with semicolon when pertinent. 2016-08-09 19:46:05 +00:00
apm
apmd It seems <sys/types.h> is a new prerequisite for <bitstring.h> after 2016-05-24 03:15:46 +00:00
arp Additional cleanup of the arp(4) man page after r306652 2016-10-07 22:17:25 +00:00
asf
audit
auditd
auditdistd
auditreduce
authpf
autofs Make autounmountd(8) not die when traced with "truss -p". 2016-11-02 08:12:37 +00:00
bhyve Fix unchecked array reference in the VGA device emulation code. 2016-10-25 17:13:58 +00:00
bhyvectl
bhyveload bhyve: improve memory size documentation 2016-06-26 14:44:01 +00:00
binmiscctl Another attempt at resolving CID 1305629. The test of cmd == -1 2016-05-13 17:48:04 +00:00
blacklistctl DIRDEPS_BUILD: Connect new directories and update dependencies. 2016-06-03 19:25:30 +00:00
blacklistd DIRDEPS_BUILD: Connect new directories and update dependencies. 2016-06-03 19:25:30 +00:00
bluetooth Avoid undefined behavior when calling va_start() in bnep_send_control(), 2016-08-29 19:40:46 +00:00
boot0cfg
boot98cfg
bootparamd
bsdconfig Guard against bad service name argument(s) to load_rc_config() 2016-10-16 20:59:28 +00:00
bsdinstall bsdinstall: add warning when unsupported partition is modified 2016-09-05 08:42:36 +00:00
bsnmpd When MAKEOBJDIRPREFIX points to a case-insensitive file system, the 2016-09-24 15:11:27 +00:00
btxld Reuse our roundup2() macro instead of reinventing the wheel. 2016-04-18 17:30:33 +00:00
camdd Fix camdd for host-aware and host-managed SMR disks. 2016-07-20 15:00:05 +00:00
cdcontrol Remove last remnants of acd(4), mcd(4), and scd(4) drivers. 2016-08-25 19:36:58 +00:00
chkgrp
chown chown: use NULL instead of 0 for null pointer 2016-10-10 14:21:21 +00:00
chroot
ckdist
clear_locks
config Allow config to be compiled from another source directory, such as one 2016-10-26 15:58:41 +00:00
cpucontrol Add support for microcode update on newer AMD CPUs (10h+) 2016-11-02 16:15:49 +00:00
crashinfo Update crashinfo to work with newer gdb from ports. 2016-07-20 18:41:47 +00:00
cron Allow symlinks to be followed in cron.d directories and fix detection of 2016-10-31 23:40:04 +00:00
crunch crunchgen: do not strip crunched binary (it will be done by install) 2016-09-30 13:16:04 +00:00
ctladm Add LU option to control reported provisioning type. 2016-10-15 14:40:34 +00:00
ctld There appeared to be even more copy/pastes. :) 2016-10-31 16:06:57 +00:00
ctm Remove a link to the CTM section of the Handbook, which no longer exists. 2016-04-14 21:56:36 +00:00
daemon daemon: Allow logging daemon stdout/stderr to file or syslog. 2016-10-22 11:26:22 +00:00
dconschat
devctl Implement 'devctl clear driver' to undo a previous 'devctl set driver'. 2016-08-29 22:48:36 +00:00
devinfo Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
digictl
diskinfo Small tweaks to the diskinfo(8) manual page, to make it more consistent 2016-09-22 07:55:07 +00:00
dumpcis
editmap
edquota Use strlcpy() instead of strncpy() to ensure that qup->fsname is NUL 2016-05-13 00:02:03 +00:00
eeprom
efivar style(9) nit: space after |. 2016-10-16 05:53:18 +00:00
etcupdate etcupdate: preserve the metadata of the destination file 2016-09-08 15:53:49 +00:00
extattr Disable extattr test on UFS1. 2016-09-21 10:58:58 +00:00
extattrctl
fdcontrol
fdformat Use NULL instead of 0 for pointers and memory allocation. 2016-04-15 02:14:11 +00:00
fdread Use NULL instead of 0 for pointers. 2016-04-14 12:46:46 +00:00
fdwrite
fifolog fifolog(1): invert order of calloc(3) arguments. 2016-09-14 16:34:52 +00:00
flowctl
fmtree Use NULL instead of 0 for pointers. 2016-04-15 03:38:58 +00:00
freebsd-update MFportsnap r264740: Use case insensitive match when parsing host(1) output. 2016-10-12 20:24:33 +00:00
fstyp fstyp tests comes with pre-created EL filesystems, 2016-10-18 12:58:17 +00:00
ftp-proxy
fwcontrol
getfmac
getpmac
gpioctl
gssd usr.sbin: minor spelling fixes on comments. 2016-05-01 16:41:25 +00:00
gstat Fix gstat's interactive f and q commands 2016-06-23 23:13:14 +00:00
hyperv
i2c i2c(8): uninitialized variable (UNINIT). 2016-05-13 15:57:55 +00:00
ifmcstat
inetd Rename getline with get_line to avoid collision with getline(3) 2016-05-10 11:12:31 +00:00
iostat Make the "r/s" and "w/s" fields in "iostat -x" a little bit wider; 2016-09-21 11:22:19 +00:00
iovctl
ip6addrctl
ipfwpcap
iscsid Make the iSCSI parameter negotiation more flexible. 2016-08-25 05:22:53 +00:00
jail Fix up the order in which jail creation processes are run, to preserve 2016-07-14 20:15:55 +00:00
jexec Define which of the username options (-u/-U) to jexec(8) is the default. 2016-04-23 22:31:58 +00:00
jls
kbdcontrol kbdcontrol: add -P path option to add keymap search paths 2016-03-16 04:05:02 +00:00
kbdmap
keyserv keyserv(1): drop useless comparison. 2016-05-30 20:41:55 +00:00
kgmon Use NULL instead of 0 for pointers. 2016-04-14 11:41:30 +00:00
kgzip kgzip.8: note that it is deprecated and clarify BUGS section 2016-08-02 21:48:26 +00:00
kldxref Use roundup2() from sys/param.h. 2016-08-23 13:43:43 +00:00
lastlogin
lmcconfig Use strlcpy() instead of strncpy() when copying ifname to ensure 2016-05-15 21:45:04 +00:00
lpr Rename getline with get_line to avoid collision with getline(3) 2016-05-10 11:17:19 +00:00
lptcontrol
mailstats
mailwrapper
makefs Be more precise when including headers so that we're less likely to 2016-10-25 16:29:15 +00:00
makemap
manctl
memcontrol
mergemaster META_MODE: Don't require filemon(4) for mergemaster(8)/etcupdate(8) 2016-07-12 19:47:01 +00:00
mfiutil
mixer mixer(8): Style: Tag no-return usage() as __dead2 2016-05-11 17:27:27 +00:00
mld6query
mlxcontrol
mount_smbfs
mountd Fix the man page to reflect the change done by r307890 to mountd.c 2016-10-25 00:59:23 +00:00
moused Add Elantech trackpad to the list of known models 2016-09-26 22:07:45 +00:00
mpsutil Plug various resources leak 2016-04-20 21:32:34 +00:00
mptable
mptutil Fix multiple Coverity Out-of-bounds access false postive issues in CAM 2016-05-24 00:57:11 +00:00
mtest mtest: Prevent access to uninitialized value. 2016-04-01 01:35:52 +00:00
nandsim usr.sbin: minor spelling fixes on comments. 2016-05-01 16:41:25 +00:00
nandtool
ndiscvt Remove the old depend (mkdep) code and make FAST_DEPEND the one true way. 2016-03-30 23:50:23 +00:00
ndp
newsyslog Properly patch up dirname()/basename() calls to not clobber ent->log. 2016-09-09 07:10:50 +00:00
nfscbd Cleanup unnecessary semicolons from utilities we all love. 2016-04-15 22:31:22 +00:00
nfsd Cleanup unnecessary semicolons from utilities we all love. 2016-04-15 22:31:22 +00:00
nfsdumpstate
nfsrevoke
nfsuserd
ngctl
nghook
nmtree Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed 2016-05-04 23:20:53 +00:00
nologin
nscd
ntp Fixup man page formatting. 2016-08-24 02:41:24 +00:00
nvram
ofwdump
pc-sysinstall Remove last remnants of acd(4), mcd(4), and scd(4) drivers. 2016-08-25 19:36:58 +00:00
pciconf Add names for some DASP devices. 2016-10-21 15:23:54 +00:00
periodic Better document security_show_{success,info,badconfig} in /etc/periodic.conf 2016-05-21 02:14:11 +00:00
pkg Remove usage of _WITH_GETLINE from usr.sbin 2016-07-30 01:10:05 +00:00
pmcannotate
pmccontrol Use macro MAX() from sys/param.h. 2016-04-22 05:07:59 +00:00
pmcstat Remove an unused field from struct pmcstat_image. 2016-10-15 23:46:55 +00:00
pmcstudy DIRDEPS_BUILD: Add some missing dirctories to the build. 2016-08-31 19:30:59 +00:00
pnpinfo
portsnap portsnap: use lam on the known good hash list 2016-10-07 20:01:59 +00:00
powerd Directly set the NONBLOCK flags when creating the socket 2016-05-10 11:18:53 +00:00
ppp Fix build of ppp when WITHOUT_PAM is set 2016-07-04 21:18:57 +00:00
pppctl
praliases
praudit
procctl
pstat
pw Close some file descriptor leaks in pw 2016-10-21 20:17:19 +00:00
pwd_mkdb
quot quot: make use of our rounddown() macro when <sys/param.h> is available. 2016-05-02 02:13:22 +00:00
quotaon
rarpd When clearing rtmsg, pass &rtmsg to bzero() instead of the address of 2016-05-17 04:03:45 +00:00
repquota
rip6query
rmt Use NULL instead of 0 for pointers. 2016-04-14 12:25:00 +00:00
route6d Use strlcpy() instead of strncpy() when copying ifname to ensure 2016-05-15 22:31:03 +00:00
rpc.lockd Add missing break in lock_partialfilelock(..) with NFS_RESERR 2016-06-13 11:19:06 +00:00
rpc.statd Mark out_of_mem(..) and usage(..) with __dead2 as they both directly call exit 2016-05-29 04:18:47 +00:00
rpc.umntall
rpc.yppasswdd Wrap EXPAND(..) macro with a do-while(0) loop and put a single statement on each line 2016-05-22 19:06:38 +00:00
rpc.ypupdated
rpc.ypxfrd
rpcbind Fix usr.sbin/rpcbind ATF tests on 32-bit platforms 2016-06-16 15:25:37 +00:00
rrenumd
rtadvctl
rtadvd In rtadvd, interface lookup calls if_indextoname() many times in a loop, 2016-11-02 15:11:23 +00:00
rtprio
rtsold rtsold: Log messages about unexpected RAs at LOG_DEBUG. 2016-10-02 00:56:21 +00:00
rwhod
sa Skip lastcomm and sa tests on unsupported architectures 2016-06-26 00:53:31 +00:00
sendmail
service
services_mkdb Remove usage of _WITH_GETLINE from usr.sbin 2016-07-30 01:10:05 +00:00
sesutil Fix sesutil fault operation. 2016-09-30 20:35:12 +00:00
setfib
setfmac
setpmac
smbmsg
snapinfo
spkrtest
spray
syslogd syslogd(8): add an 'include' keyword 2016-11-01 01:41:24 +00:00
sysrc Change my given name from "Garrett" to "Ngie" 2016-06-13 10:30:49 +00:00
tcpdchk
tcpdmatch
tcpdrop
tcpdump Fix spelling of the casper introduced in the r296047. 2016-06-08 22:30:21 +00:00
tests Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed 2016-05-04 23:20:53 +00:00
timed Undo the bogus gethostname() change from r299709. 2016-05-14 04:29:13 +00:00
traceroute
traceroute6 traceroute6(8): use NULL instead of zero for initializing a pointer. 2016-05-12 02:05:50 +00:00
trpt Remove "long" variables from the TCP stack (not including the modular 2016-10-06 16:28:34 +00:00
tzsetup Fix build of tzsetup when WITHOUT_DIALOG is set 2016-10-22 22:35:39 +00:00
uathload Rename devname to udevname after including stdlib.h in r303445 2016-07-30 20:39:39 +00:00
uefisign uefisign: Remove backwards-compatibility sys/capability.h support 2016-09-19 16:07:32 +00:00
ugidfw
uhsoctl
unbound Upgrade to Unbound 1.5.9. 2016-09-04 12:17:57 +00:00
usbconfig
usbdump Reuse our roundup2() macro instead of reinventing the wheel. 2016-04-18 17:30:33 +00:00
utx
vidcontrol
vigr
vipw
wake
watch
watchdogd nap time between pats is forced to be at most half of the timeout 2016-10-28 14:49:54 +00:00
wlandebug
wpa
yp_mkdb
ypbind Use strlcpy() instead of strncpy() when copying to dom_domain to 2016-05-12 21:35:40 +00:00
ypldap DIRDEPS_BUILD: Update dependencies after a 'make bootstrap-tools'. 2016-09-02 20:41:43 +00:00
yppoll
yppush
ypserv Delay calling yp_malloc_dnsent() until after some additional sanity 2016-05-25 00:25:38 +00:00
ypset
zic
zonectl DIRDEPS_BUILD: Connect new directories and update dependencies. 2016-06-03 19:25:30 +00:00
zzz
Makefile Fix build of tzsetup when WITHOUT_DIALOG is set 2016-10-22 22:35:39 +00:00
Makefile.amd64 Remove the si(4) driver and sicontrol(8) for Specialix serial cards. 2016-08-19 21:14:27 +00:00
Makefile.arm
Makefile.arm64
Makefile.i386 Remove the wl(4) driver and wlconfig(8) utility. 2016-08-19 22:27:14 +00:00
Makefile.inc
Makefile.mips
Makefile.powerpc Create a new MACHINE_ARCH for Freescale PowerPC e500v2 2016-10-22 01:57:15 +00:00
Makefile.sparc64