History log of /freebsd-11-stable/sys/x86/x86/identcpu.c
Revision Date Author Comments
# 362382 19-Jun-2020 kib

MFC r362129:
x86: add bits definitions for SRBDS mitigation control.


# 362381 19-Jun-2020 kib

MFC r348130 (by cem):
Decode and name additional x86 feature bits.


# 354658 12-Nov-2019 scottl

MFC: Add new bit definitions for TSX, related to the TAA issue. The actual
mitigation will follow in a future commit.

Obtained from: Intel


# 347947 17-May-2019 kib

MFC r347625:
Properly announce MD_CLEAR.

Approved by: re (gjb)


# 345199 15-Mar-2019 kib

MFC r345075:
Add register number, CPUID bits, and print identification for TSX
force abort errata.


# 343849 07-Feb-2019 kib

MFC r343757:
Update CPUID bits definitions and CPU identification based on changes
in SDM rev. 069.


# 340609 19-Nov-2018 kib

MFC r340487:
Align IA32_ARCH_CAP MSR definitions and use with SDM rev. 068.


# 338199 22-Aug-2018 kib

MFC r338016:
Print L1D FLUSH feature.


# 334151 24-May-2018 kib

MFC r334004:
Add definition for Intel Speculative Store Bypass Disable MSR bits.

Security: CVE-2018-3639
Approved by: re (gjb)


# 332743 19-Apr-2018 jhb

MFC 331466:
Add a workaround to the hypervisor detection for older versions of KVM.

Originally KVM set %eax to 0 in the cpuid leaf 0x4000000 rather than
to the highest supported leaf in the hypervisor "branch". Detect this
case and fixup the %eax value so that the hypervisor is still
detected.


# 331303 21-Mar-2018 avg

MFC r330793: fix r297857, do not modify CPU extension bits under virtual machines

PR: 213155


# 329462 17-Feb-2018 kib

MFC r328083,328096,328116,328119,328120,328128,328135,328153,328157,
328166,328177,328199,328202,328205,328468,328470,328624,328625,328627,
328628,329214,329297,329365:

Meltdown mitigation by PTI, PCID optimization of PTI, and kernel use of IBRS
for some mitigations of Spectre.

Tested by: emaste, Arshan Khanifar <arshankhanifar@gmail.com>
Discussed with: jkim
Sponsored by: The FreeBSD Foundation


# 328215 21-Jan-2018 kib

MFC r327964:
Enumerate and print Intel CPU features for Speculative Execution Side
Channel Mitigations.


# 328214 21-Jan-2018 kib

MFC r323822 (by cem):
x86: Decode AMD "Extended Feature Extensions ID EBX" bits.


# 327871 12-Jan-2018 kib

MFC r327597:
Make it possible to re-evaluate cpu_features.


# 327194 26-Dec-2017 kib

MFC r327118:
Add missed AVX512VL (128 and 256 bit vector length) extension
identification bit.


# 323732 19-Sep-2017 avg

MFC r319212: fix indentation


# 323431 11-Sep-2017 kib

MFC r322762, r322799, r322832, r322833:
Make WRFSBASE and WRGSBASE instructions functional.

Bump stable/11 __FreeBSD_version.


# 322490 14-Aug-2017 sephe

MFC 322323 by jkim

Split identify_cpu() into two functions for amd64 as we do for i386. This
reduces diff between amd64 and i386. Also, it fixes a regression introduced
in r322076, i.e., identify_hypervisor() failed to identify some hypervisors.
This function assumes cpu_feature2 is already initialized.

Reported by: dexuan
Tested by: dexuan


# 322204 07-Aug-2017 jkim

MFC: r322076

Detect hypervisor early so that we set lower hz on it.


# 320568 02-Jul-2017 araujo

MFC r319678:

Allow sysctl kern.vm_guest to return bhyve when running under bhyve.

Submitted by: Sean Fagan <sef@ixsystems.com>
Reviewed by: grehan
MFH: 4 weeks.
Sponsored by: iXsystems, Inc.
Differential Revision: https://reviews.freebsd.org/D11090


# 315927 25-Mar-2017 grehan

MFC r315361 and r315364: Hide MONITORX/MWAITX from guests.

r315361
Add the AMD MONITORX/MWAITX feature definition introduced in
Bulldozer/Ryzen CPUs.

r315364
Hide the AMD MONITORX/MWAITX capability.
Otherwise, recent Linux guests will use these instructions, resulting
in #UD exceptions since bhyve doesn't implement MONITOR/MWAIT exits.

This fixes boot-time hangs in recent Linux guests on Ryzen CPUs
(and probably Bulldozer aka AMD FX as well).


# 314210 24-Feb-2017 kib

MFC r313154:
For i386, remove config options CPU_DISABLE_CMPXCHG, CPU_DISABLE_SSE
and device npx.


# 310970 31-Dec-2016 mjg

MFC r307653:

Mark a bunch of mpsafe sysctls as such.

This gives me a sysctl Giant-free buildworld.


# 308433 07-Nov-2016 jhb

MFC 305836: Remove 'cpu' and 'cpu_class' on amd64.

The 'cpu' and 'cpu_class' variables were always set to the same value
on amd64 and are legacy holdovers from i386. Remove them entirely on
amd64.

Requested by: kib (MFC)


# 305825 15-Sep-2016 kib

MFC r305744:
Fix typo in comment.


# 304429 18-Aug-2016 badger

MFC r302783:

Add explicit detection of KVM hypervisor

Set vm_guest to a new enum value (VM_GUEST_KVM) when kvm is detected and use
vm_guest in conditionals testing for KVM.

Also, fix a conditional checking if we're running in a VM which caught only
the generic VM case, but not more specific VMs (KVM, VMWare, etc.). (Spotted
by: vangyzen).

Sponsored by: Dell Inc.
Approved by: vangyzen (mentor)