[PATCH v3 08/15] ARM: spectre-v2: harden user aborts in kernel space
From: tony@atomide.com (Tony Lindgren)
Date: 2018-05-25 15:47:42
Also in:
kvmarm
* Russell King [off-list ref] [180525 15:10]:
+static void cpu_v7_spectre_init(void)
+{
+ const char *spectre_v2_method = NULL;
+ int cpu = smp_processor_id();
+
+ if (per_cpu(harden_branch_predictor_fn, cpu))
+ return;
+
+ switch (read_cpuid_part()) {
+ case ARM_CPU_PART_CORTEX_A8:
+ case ARM_CPU_PART_CORTEX_A9:
+ case ARM_CPU_PART_CORTEX_A12:
+ case ARM_CPU_PART_CORTEX_A17:
+ case ARM_CPU_PART_CORTEX_A73:
+ case ARM_CPU_PART_CORTEX_A75:
+ per_cpu(harden_branch_predictor_fn, cpu) =
+ harden_branch_predictor_bpiall;
+ spectre_v2_method = "BPIALL";
+ break;
+
+ case ARM_CPU_PART_CORTEX_A15:
+ case ARM_CPU_PART_BRAHMA_B15:
+ per_cpu(harden_branch_predictor_fn, cpu) =
+ harden_branch_predictor_iciallu;
+ spectre_v2_method = "ICIALLU";
+ break;
+ }
+ if (spectre_v2_method)
+ pr_info("CPU%u: Spectre v2: using %s workaround\n",
+ smp_processor_id(), spectre_v2_method);
+}We can now get this with the whole series applied: CPU0: Spectre v2: firmware did not set auxiliary control register IBE bit, system vulnerable CPU: Spectre v2: using ICIALLU workaround So maybe change the wording from "using %s workaround" to "chosen workaround %s"? Or I guess disabling the pr_info when not functional can be done in the later patches based on some variable set by check_spectre_auxcr() would be doable too. Regards, Tony