git: DragonFly_RELEASE_6_0 kernel - Workaround qemu bug w/ MSR_IA32_ARCH_CAPABILITIES

2021-10-08 Thread Aaron LI


commit 3905720f4b42877bb5149e5fcdf7359a3572c92f
Author: Matthew Dillon 
Date:   Mon Aug 9 10:45:53 2021 -0700

kernel - Workaround qemu bug w/ MSR_IA32_ARCH_CAPABILITIES

* qemu allows cpuid report that MSR_IA32_ARCH_CAPABILITIES exists, but
  then fails to implement the MSR.  This causes the kernel to panic
  in early boot.

* Use rdmsr_safe() and report the non-working msr instead of panicing.

* Fixes qemu + DFly on some recent Intel cpus.

refs #3292

Summary of changes:
 sys/platform/pc64/x86_64/identcpu.c   | 24 ++--
 sys/platform/pc64/x86_64/vm_machdep.c | 11 ++-
 2 files changed, 28 insertions(+), 7 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/3905720f4b42877bb5149e5fcdf7359a3572c92f


-- 
DragonFly BSD source repository


git: DragonFly_RELEASE_6_0 x86_64/specialreg.h: Deprecate old defines of Spectre mitigation

2021-10-08 Thread Aaron LI


commit 22e07bffca3d72ff01814e82b1d64a84d8fd6051
Author: Aaron LI 
Date:   Wed May 26 19:40:58 2021 +0800

x86_64/specialreg.h: Deprecate old defines of Spectre mitigation

Migrate the old defines of Spectre mitigation to the new ones obtained
from NetBSD and FreeBSD.  Specifically, apply the following changes:

* CPUID_7_0_I3_* -> CPUID_STDEXT3_*
* CPUID_SEF_* -> CPUID_STDEXT3_*
* CPUID_*_8008_I1_* -> CPUID_CAPEX_*

In addition, merge the comments to the relevant code.

No functional changes.

Summary of changes:
 sys/cpu/x86_64/include/specialreg.h   | 43 ---
 sys/platform/pc64/x86_64/identcpu.c   |  2 +-
 sys/platform/pc64/x86_64/vm_machdep.c | 48 ++-
 3 files changed, 26 insertions(+), 67 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/22e07bffca3d72ff01814e82b1d64a84d8fd6051


-- 
DragonFly BSD source repository


git: DragonFly_RELEASE_6_0 x86_64/specialreg.h: Reorganize SPEC_CTRL_* macros

2021-10-08 Thread Aaron LI


commit 6f0a4046651cb87a06cbd900ac797c3229bb1291
Author: Aaron LI 
Date:   Wed May 26 19:38:00 2021 +0800

x86_64/specialreg.h: Reorganize SPEC_CTRL_* macros

Move the SPEC_CTRL_* bit defines near to the corresponding MSR_SPEC_CTRL
MSR definition.

Summary of changes:
 sys/cpu/x86_64/include/specialreg.h | 25 ++---
 1 file changed, 14 insertions(+), 11 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/6f0a4046651cb87a06cbd900ac797c3229bb1291


-- 
DragonFly BSD source repository


git: DragonFly_RELEASE_6_0 x86_64/specialreg.h: Add more CPUID Fn8000_0008 defines

2021-10-08 Thread Aaron LI


commit 680dd03bde779276929e816ff53f8b84c69922d9
Author: Aaron LI 
Date:   Tue May 11 00:14:21 2021 +0800

x86_64/specialreg.h: Add more CPUID Fn8000_0008 defines

CPUID Fn8000_0008 - AMD Processor Capacity Parameters and Extended Features

These CPUID defines are taken from NetBSD, and some of them will be used
by NVMM.

Note that FreeBSD also has such CPUID, but in different names.

Summary of changes:
 sys/cpu/x86_64/include/specialreg.h | 24 +++-
 1 file changed, 23 insertions(+), 1 deletion(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/680dd03bde779276929e816ff53f8b84c69922d9


-- 
DragonFly BSD source repository


git: DragonFly_RELEASE_6_0 x86_64/specialreg.h: Rename two IA32_ARCH_* defines for consistency

2021-10-08 Thread Aaron LI


commit d74f34a269e030caa89ebb6a1a02bd42a9eaf539
Author: Aaron LI 
Date:   Tue May 11 13:18:43 2021 +0800

x86_64/specialreg.h: Rename two IA32_ARCH_* defines for consistency

Rename IA32_ARCH_SSB_NO -> IA32_ARCH_CAP_SSB_NO, and
IA32_ARCH_MDS_NO -> IA32_ARCH_CAP_MDS_NO, for better consistency with
other IA32_ARCH_CAP_* defines.

Submitted in bug #3265 by chicken.
https://bugs.dragonflybsd.org/issues/3265

Summary of changes:
 sys/cpu/x86_64/include/specialreg.h   | 4 ++--
 sys/platform/pc64/x86_64/vm_machdep.c | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/d74f34a269e030caa89ebb6a1a02bd42a9eaf539


-- 
DragonFly BSD source repository


git: DragonFly_RELEASE_6_0 x86_64/specialreg.h: Add various CPUID Fn0000_0007 defines

2021-10-08 Thread Aaron LI


commit 7cdfc2a839bb17b316663079a23bd95c6421a958
Author: Aaron LI 
Date:   Mon May 10 23:46:06 2021 +0800

x86_64/specialreg.h: Add various CPUID Fn_0007 defines

These Structured Extended Features (SEF) defines are taken from FreeBSD,
but with comments taken from NetBSD.

Some of these SEF defines will be used by NVMM. (Although NetBSD define
them with different names than FreeBSD.)

Summary of changes:
 sys/cpu/x86_64/include/specialreg.h | 116 +---
 1 file changed, 95 insertions(+), 21 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/7cdfc2a839bb17b316663079a23bd95c6421a958


-- 
DragonFly BSD source repository