]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
x86/bus_lock: Add support for AMD
authorRavi Bangoria <ravi.bangoria@amd.com>
Thu, 8 Aug 2024 06:29:35 +0000 (06:29 +0000)
committerThomas Gleixner <tglx@linutronix.de>
Thu, 8 Aug 2024 16:02:15 +0000 (18:02 +0200)
commit408eb7417a92c5354c7be34f7425b305dfe30ad9
tree4b48ca92bc9691ff95683a6c994def1a20df70bb
parent350afa8a1101f62ce31bc4ed6f69cf4b90ec4fa2
x86/bus_lock: Add support for AMD

Add Bus Lock Detect (called Bus Lock Trap in AMD docs) support for AMD
platforms. Bus Lock Detect is enumerated with CPUID Fn0000_0007_ECX_x0
bit [24 / BUSLOCKTRAP]. It can be enabled through MSR_IA32_DEBUGCTLMSR.
When enabled, hardware clears DR6[11] and raises a #DB exception on
occurrence of Bus Lock if CPL > 0. More detail about the feature can be
found in AMD APM[1].

[1]: AMD64 Architecture Programmer's Manual Pub. 40332, Rev. 4.07 - June
     2023, Vol 2, 13.1.3.6 Bus Lock Trap
     https://bugzilla.kernel.org/attachment.cgi?id=304653

Signed-off-by: Ravi Bangoria <ravi.bangoria@amd.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com>
Link: https://lore.kernel.org/all/20240808062937.1149-3-ravi.bangoria@amd.com
Documentation/arch/x86/buslock.rst
arch/x86/Kconfig
arch/x86/kernel/cpu/common.c
arch/x86/kernel/cpu/intel.c