From c4219eb26d9e13b9666f61cd0b7d1c2b001fde6b Mon Sep 17 00:00:00 2001 From: guenther Date: Sat, 4 May 2024 00:27:42 +0000 Subject: [PATCH] amd64 is guaranteed to have PAT and CLFLUSH; stop testing cpu flags for them on that arch. ok jsg@ --- sys/dev/pci/drm/include/asm/cpufeature.h | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/sys/dev/pci/drm/include/asm/cpufeature.h b/sys/dev/pci/drm/include/asm/cpufeature.h index 621ea054fc3..66c43dfabce 100644 --- a/sys/dev/pci/drm/include/asm/cpufeature.h +++ b/sys/dev/pci/drm/include/asm/cpufeature.h @@ -16,12 +16,18 @@ static inline bool static_cpu_has(uint16_t f) { switch (f) { - case X86_FEATURE_CLFLUSH: - return curcpu()->ci_cflushsz != 0; case X86_FEATURE_XMM4_1: return (cpu_ecxfeature & CPUIDECX_SSE41) != 0; +#ifdef __amd64__ + case X86_FEATURE_CLFLUSH: + case X86_FEATURE_PAT: + return true; +#else + case X86_FEATURE_CLFLUSH: + return curcpu()->ci_cflushsz != 0; case X86_FEATURE_PAT: return (curcpu()->ci_feature_flags & CPUID_PAT) != 0; +#endif case X86_FEATURE_HYPERVISOR: return (cpu_ecxfeature & CPUIDECX_HV) != 0; default: @@ -32,7 +38,7 @@ static_cpu_has(uint16_t f) static inline bool pat_enabled(void) { - return ((curcpu()->ci_feature_flags & CPUID_PAT) != 0); + return static_cpu_has(X86_FEATURE_PAT); } #define boot_cpu_has(x) static_cpu_has(x) -- 2.20.1