Author: kib
Date: Mon Nov 19 06:07:17 2018
New Revision: 340609
URL: https://svnweb.freebsd.org/changeset/base/340609

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

Modified:
  stable/11/sys/amd64/vmm/intel/vmx.c
  stable/11/sys/x86/include/specialreg.h
  stable/11/sys/x86/x86/cpu_machdep.c
  stable/11/sys/x86/x86/identcpu.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/amd64/vmm/intel/vmx.c
==============================================================================
--- stable/11/sys/amd64/vmm/intel/vmx.c Mon Nov 19 05:56:46 2018        
(r340608)
+++ stable/11/sys/amd64/vmm/intel/vmx.c Mon Nov 19 06:07:17 2018        
(r340609)
@@ -733,7 +733,8 @@ vmx_init(int ipinum)
                return (error);
        }
 
-       guest_l1d_flush = (cpu_ia32_arch_caps & IA32_ARCH_CAP_RDCL_NO) == 0;
+       guest_l1d_flush = (cpu_ia32_arch_caps &
+           IA32_ARCH_CAP_SKIP_L1DFL_VMENTRY) == 0;
        TUNABLE_INT_FETCH("hw.vmm.l1d_flush", &guest_l1d_flush);
 
        /*

Modified: stable/11/sys/x86/include/specialreg.h
==============================================================================
--- stable/11/sys/x86/include/specialreg.h      Mon Nov 19 05:56:46 2018        
(r340608)
+++ stable/11/sys/x86/include/specialreg.h      Mon Nov 19 06:07:17 2018        
(r340609)
@@ -394,7 +394,9 @@
 /* MSR IA32_ARCH_CAP(ABILITIES) bits */
 #define        IA32_ARCH_CAP_RDCL_NO   0x00000001
 #define        IA32_ARCH_CAP_IBRS_ALL  0x00000002
-#define        IA32_ARCH_CAP_SSBD_NO   0x00000004
+#define        IA32_ARCH_CAP_RSBA      0x00000004
+#define        IA32_ARCH_CAP_SKIP_L1DFL_VMENTRY        0x00000008
+#define        IA32_ARCH_CAP_SSB_NO    0x00000010
 
 /*
  * CPUID manufacturers identifiers

Modified: stable/11/sys/x86/x86/cpu_machdep.c
==============================================================================
--- stable/11/sys/x86/x86/cpu_machdep.c Mon Nov 19 05:56:46 2018        
(r340608)
+++ stable/11/sys/x86/x86/cpu_machdep.c Mon Nov 19 06:07:17 2018        
(r340609)
@@ -921,7 +921,7 @@ hw_ssb_recalculate(bool all_cpus)
                hw_ssb_set(true, all_cpus);
                break;
        case 2: /* auto */
-               hw_ssb_set((cpu_ia32_arch_caps & IA32_ARCH_CAP_SSBD_NO) != 0 ?
+               hw_ssb_set((cpu_ia32_arch_caps & IA32_ARCH_CAP_SSB_NO) != 0 ?
                    false : true, all_cpus);
                break;
        }

Modified: stable/11/sys/x86/x86/identcpu.c
==============================================================================
--- stable/11/sys/x86/x86/identcpu.c    Mon Nov 19 05:56:46 2018        
(r340608)
+++ stable/11/sys/x86/x86/identcpu.c    Mon Nov 19 06:07:17 2018        
(r340609)
@@ -1013,6 +1013,9 @@ printcpuinfo(void)
                                       "\020"
                                       "\001RDCL_NO"
                                       "\002IBRS_ALL"
+                                      "\003RSBA"
+                                      "\004SKIP_L1DFL_VME"
+                                      "\005SSB_NO"
                                       );
                        }
 
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to