[PATCH] x86/speculation: Revert turning on STIBP all the time

From: Tim Chen
Date: Wed Nov 21 2018 - 15:33:52 EST


Commit 53c613fe "x86/speculation: Enable cross-hyperthread spectre v2 STIBP mitigation"
turns on STIBP all the time.

This causes large performance regression in many workloads.

One case is perlbench in the SpecInt Rate 2006 test suite which shows a
21% reduction in throughput.
There're also other reports of drop in performance on Python and PHP benchmarks:
https://www.phoronix.com/scan.php?page=article&item=linux-420-bisect&num=2

STIBP on all the time should not be the default option.

Turn off STIBP all the time for now till STIBP can be applied on
a per task basis.

Signed-off-by: Tim Chen <tim.c.chen@xxxxxxxxxxxxxxx>
---
arch/x86/kernel/cpu/bugs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/kernel/cpu/bugs.c b/arch/x86/kernel/cpu/bugs.c
index c37e66e..21a8f39 100644
--- a/arch/x86/kernel/cpu/bugs.c
+++ b/arch/x86/kernel/cpu/bugs.c
@@ -332,7 +332,7 @@ static bool stibp_needed(void)
if (!boot_cpu_has(X86_FEATURE_STIBP))
return false;

- return true;
+ return false;
}

static void update_stibp_msr(void *info)
--
2.9.4