x86/resctrl: Remove unnecessary RMID checks
authorReinette Chatre <reinette.chatre@intel.com>
Tue, 5 May 2020 22:36:14 +0000 (15:36 -0700)
committerBorislav Petkov <bp@suse.de>
Wed, 6 May 2020 15:53:46 +0000 (17:53 +0200)
The cache and memory bandwidth monitoring properties are read using
CPUID on every CPU. After the information is read from the system a
sanity check is run to

 (1) ensure that the RMID data is initialized for the boot CPU in case
     the information was not available on the boot CPU and

 (2) the boot CPU's RMID is set to the minimum of RMID obtained
     from all CPUs.

Every known platform that supports resctrl has the same maximum RMID
on all CPUs. Both sanity checks found in x86_init_cache_qos() can thus
safely be removed.

Suggested-by: Borislav Petkov <bp@suse.de>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/c9a3b60d34091840c8b0bd1c6fab15e5ba92cb17.1588715690.git.reinette.chatre@intel.com
arch/x86/kernel/cpu/common.c

index a8f0f22..556a96d 100644 (file)
@@ -1354,20 +1354,6 @@ static void generic_identify(struct cpuinfo_x86 *c)
 #endif
 }
 
-static void x86_init_cache_qos(struct cpuinfo_x86 *c)
-{
-       /*
-        * The heavy lifting of max_rmid and cache_occ_scale are handled
-        * in get_cpu_cap().  Here we just set the max_rmid for the boot_cpu
-        * in case CQM bits really aren't there in this CPU.
-        */
-       if (c != &boot_cpu_data) {
-               boot_cpu_data.x86_cache_max_rmid =
-                       min(boot_cpu_data.x86_cache_max_rmid,
-                           c->x86_cache_max_rmid);
-       }
-}
-
 /*
  * Validate that ACPI/mptables have the same information about the
  * effective APIC id and update the package map.
@@ -1480,7 +1466,6 @@ static void identify_cpu(struct cpuinfo_x86 *c)
 #endif
 
        x86_init_rdrand(c);
-       x86_init_cache_qos(c);
        setup_pku(c);
 
        /*