x86/tsx: Add config options to set tsx=on|off|auto
authorMichal Hocko <mhocko@suse.com>
Wed, 23 Oct 2019 10:35:50 +0000 (12:35 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Mon, 28 Oct 2019 08:12:18 +0000 (09:12 +0100)
commitdb616173d787395787ecc93eef075fa975227b10
tree9b55a074699594c3d20d2c1959d89a111717b908
parenta7a248c593e4fd7a67c50b5f5318fe42a0db335e
x86/tsx: Add config options to set tsx=on|off|auto

There is a general consensus that TSX usage is not largely spread while
the history shows there is a non trivial space for side channel attacks
possible. Therefore the tsx is disabled by default even on platforms
that might have a safe implementation of TSX according to the current
knowledge. This is a fair trade off to make.

There are, however, workloads that really do benefit from using TSX and
updating to a newer kernel with TSX disabled might introduce a
noticeable regressions. This would be especially a problem for Linux
distributions which will provide TAA mitigations.

Introduce config options X86_INTEL_TSX_MODE_OFF, X86_INTEL_TSX_MODE_ON
and X86_INTEL_TSX_MODE_AUTO to control the TSX feature. The config
setting can be overridden by the tsx cmdline options.

 [ bp: Text cleanups from Josh. ]

Suggested-by: Borislav Petkov <bpetkov@suse.de>
Signed-off-by: Michal Hocko <mhocko@suse.com>
Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Josh Poimboeuf <jpoimboe@redhat.com>
arch/x86/Kconfig
arch/x86/kernel/cpu/tsx.c