History log of /src/sys/x86/include/ucode.h (Results 1 – 25 of 33)
Revision Date Author Comments
# d9f03a43 27-Sep-2025 Gleb Smirnoff <glebius@FreeBSD.org>

ucode: use wrmsr_early_safe() for early CPU microcode update

Use the new method for wrmsr that is able to set up fault handler even at
the very early stage of kernel boot. This prevents panic with

ucode: use wrmsr_early_safe() for early CPU microcode update

Use the new method for wrmsr that is able to set up fault handler even at
the very early stage of kernel boot. This prevents panic with new
microcode for some new AMD EPYCs, that requires certain patchlevel of
microcode to be already present in the CPU. If BSP patching failed, we
print the message and we don't try to patch APs.

This has been tested only on AMD booted in EFI mode.

Reviewed by: stas, kib
Differential Revision: https://reviews.freebsd.org/D52643

show more ...


# 83804499 18-Sep-2025 Gleb Smirnoff <glebius@FreeBSD.org>

cpucontrol: return selected revision from ucode_amd_find()

This fixes two printing bugs in cpucontrol(1). First, the utility will
now print "updating from rev X to rev Y", instead of incorrect "upd

cpucontrol: return selected revision from ucode_amd_find()

This fixes two printing bugs in cpucontrol(1). First, the utility will
now print "updating from rev X to rev Y", instead of incorrect "updating
to revision X", where X is actually the old revision. This also matches
what Intel updater prints. Second, the utility won't incorrectly warn
that the update failed after reading the new revision post update.

Reviewed by: kib, markj
Differential Revision: https://reviews.freebsd.org/D52506

show more ...


# 34467bd7 22-Feb-2024 Chuck Silvers <chs@FreeBSD.org>

x86/ucode: add support for early loading of CPU ucode on AMD.

Sponsored by: Netflix
Reviewed by: markj
Differential Revision: https://reviews.freebsd.org/D43318


# fd24a63a 13-Feb-2024 Chuck Silvers <chs@FreeBSD.org>

x86/ucode: add const where appropriate

Sponsored by: Netflix
Reviewed by: markj
Differential Revision: https://reviews.freebsd.org/D43865


# 95ee2897 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: two-line .h pattern

Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/


# 4d846d26 10-May-2023 Warner Losh <imp@FreeBSD.org>

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of BSD-2-Clause.

Discussed with: pfg
MFC After: 3 days
Sponsored by: Netflix

show more ...


# 01d4e214 05-Oct-2018 Glen Barber <gjb@FreeBSD.org>

MFH r338661 through r339200.

Sponsored by: The FreeBSD Foundation


# c0b5e991 14-Sep-2018 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r338595 through r338689, and resolve conflicts.


# d5089b3a 14-Sep-2018 Mark Johnston <markj@FreeBSD.org>

Log a message after a successful boot-time microcode update.

Reviewed by: kib
Approved by: re (delphij)
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D17135


# 3611ec60 18-Aug-2018 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r337646 through r338014.


# d9f03a43 27-Sep-2025 Gleb Smirnoff <glebius@FreeBSD.org>

ucode: use wrmsr_early_safe() for early CPU microcode update

Use the new method for wrmsr that is able to set up fault handler even at
the very early stage of kernel boot. This prevents panic with

ucode: use wrmsr_early_safe() for early CPU microcode update

Use the new method for wrmsr that is able to set up fault handler even at
the very early stage of kernel boot. This prevents panic with new
microcode for some new AMD EPYCs, that requires certain patchlevel of
microcode to be already present in the CPU. If BSP patching failed, we
print the message and we don't try to patch APs.

This has been tested only on AMD booted in EFI mode.

Reviewed by: stas, kib
Differential Revision: https://reviews.freebsd.org/D52643

show more ...


# 83804499 18-Sep-2025 Gleb Smirnoff <glebius@FreeBSD.org>

cpucontrol: return selected revision from ucode_amd_find()

This fixes two printing bugs in cpucontrol(1). First, the utility will
now print "updating from rev X to rev Y", instead of incorrect "upd

cpucontrol: return selected revision from ucode_amd_find()

This fixes two printing bugs in cpucontrol(1). First, the utility will
now print "updating from rev X to rev Y", instead of incorrect "updating
to revision X", where X is actually the old revision. This also matches
what Intel updater prints. Second, the utility won't incorrectly warn
that the update failed after reading the new revision post update.

Reviewed by: kib, markj
Differential Revision: https://reviews.freebsd.org/D52506

show more ...


# 34467bd7 22-Feb-2024 Chuck Silvers <chs@FreeBSD.org>

x86/ucode: add support for early loading of CPU ucode on AMD.

Sponsored by: Netflix
Reviewed by: markj
Differential Revision: https://reviews.freebsd.org/D43318


# fd24a63a 13-Feb-2024 Chuck Silvers <chs@FreeBSD.org>

x86/ucode: add const where appropriate

Sponsored by: Netflix
Reviewed by: markj
Differential Revision: https://reviews.freebsd.org/D43865


# 95ee2897 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: two-line .h pattern

Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/


# 4d846d26 10-May-2023 Warner Losh <imp@FreeBSD.org>

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of BSD-2-Clause.

Discussed with: pfg
MFC After: 3 days
Sponsored by: Netflix

show more ...


# 01d4e214 05-Oct-2018 Glen Barber <gjb@FreeBSD.org>

MFH r338661 through r339200.

Sponsored by: The FreeBSD Foundation


# c0b5e991 14-Sep-2018 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r338595 through r338689, and resolve conflicts.


# d5089b3a 14-Sep-2018 Mark Johnston <markj@FreeBSD.org>

Log a message after a successful boot-time microcode update.

Reviewed by: kib
Approved by: re (delphij)
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D17135


# 3611ec60 18-Aug-2018 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r337646 through r338014.


# 97edfc1b 13-Aug-2018 Mark Johnston <markj@FreeBSD.org>

Implement kernel support for early loading of Intel microcode updates.

Updates in the format described in section 9.11 of the Intel SDM can
now be applied as one of the first steps in booting the ke

Implement kernel support for early loading of Intel microcode updates.

Updates in the format described in section 9.11 of the Intel SDM can
now be applied as one of the first steps in booting the kernel. Updates
that are loaded this way are automatically re-applied upon exit from
ACPI sleep states, in contrast with the existing cpucontrol(8)-based
method. For the time being only Intel updates are supported.

Microcode update files are passed to the kernel via loader(8). The
file type must be "cpu_microcode" in order for the file to be recognized
as a candidate microcode update. Updates for multiple CPU types may be
concatenated together into a single file, in which case the kernel
will select and apply a matching update. Memory used to store the
update file will be freed back to the system once the update is applied,
so this approach will not consume more memory than required.

Reviewed by: kib
MFC after: 6 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D16370

show more ...


# 97edfc1b 13-Aug-2018 Mark Johnston <markj@FreeBSD.org>

Implement kernel support for early loading of Intel microcode updates.

Updates in the format described in section 9.11 of the Intel SDM can
now be applied as one of the first steps in booting the ke

Implement kernel support for early loading of Intel microcode updates.

Updates in the format described in section 9.11 of the Intel SDM can
now be applied as one of the first steps in booting the kernel. Updates
that are loaded this way are automatically re-applied upon exit from
ACPI sleep states, in contrast with the existing cpucontrol(8)-based
method. For the time being only Intel updates are supported.

Microcode update files are passed to the kernel via loader(8). The
file type must be "cpu_microcode" in order for the file to be recognized
as a candidate microcode update. Updates for multiple CPU types may be
concatenated together into a single file, in which case the kernel
will select and apply a matching update. Memory used to store the
update file will be freed back to the system once the update is applied,
so this approach will not consume more memory than required.

Reviewed by: kib
MFC after: 6 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D16370

show more ...


# d9f03a43 27-Sep-2025 Gleb Smirnoff <glebius@FreeBSD.org>

ucode: use wrmsr_early_safe() for early CPU microcode update

Use the new method for wrmsr that is able to set up fault handler even at
the very early stage of kernel boot. This prevents panic with

ucode: use wrmsr_early_safe() for early CPU microcode update

Use the new method for wrmsr that is able to set up fault handler even at
the very early stage of kernel boot. This prevents panic with new
microcode for some new AMD EPYCs, that requires certain patchlevel of
microcode to be already present in the CPU. If BSP patching failed, we
print the message and we don't try to patch APs.

This has been tested only on AMD booted in EFI mode.

Reviewed by: stas, kib
Differential Revision: https://reviews.freebsd.org/D52643

show more ...


# 83804499 18-Sep-2025 Gleb Smirnoff <glebius@FreeBSD.org>

cpucontrol: return selected revision from ucode_amd_find()

This fixes two printing bugs in cpucontrol(1). First, the utility will
now print "updating from rev X to rev Y", instead of incorrect "upd

cpucontrol: return selected revision from ucode_amd_find()

This fixes two printing bugs in cpucontrol(1). First, the utility will
now print "updating from rev X to rev Y", instead of incorrect "updating
to revision X", where X is actually the old revision. This also matches
what Intel updater prints. Second, the utility won't incorrectly warn
that the update failed after reading the new revision post update.

Reviewed by: kib, markj
Differential Revision: https://reviews.freebsd.org/D52506

show more ...


# 34467bd7 22-Feb-2024 Chuck Silvers <chs@FreeBSD.org>

x86/ucode: add support for early loading of CPU ucode on AMD.

Sponsored by: Netflix
Reviewed by: markj
Differential Revision: https://reviews.freebsd.org/D43318


12