From d0ce95087288b30e5e211bac8e9a0817f2effcf5 Mon Sep 17 00:00:00 2001 From: Tomáš Mózes Date: Fri, 5 Apr 2024 08:59:40 +0200 Subject: Xen 4.17.4-pre-patchset-1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tomáš Mózes --- ...Support-the-watchdog-on-newer-AMD-systems.patch | 48 ++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 0066-x86-boot-Support-the-watchdog-on-newer-AMD-systems.patch (limited to '0066-x86-boot-Support-the-watchdog-on-newer-AMD-systems.patch') diff --git a/0066-x86-boot-Support-the-watchdog-on-newer-AMD-systems.patch b/0066-x86-boot-Support-the-watchdog-on-newer-AMD-systems.patch new file mode 100644 index 0000000..e501861 --- /dev/null +++ b/0066-x86-boot-Support-the-watchdog-on-newer-AMD-systems.patch @@ -0,0 +1,48 @@ +From 2777b499f1f6d5cea68f9479f82d055542b822ad Mon Sep 17 00:00:00 2001 +From: Andrew Cooper +Date: Tue, 2 Apr 2024 16:20:30 +0200 +Subject: [PATCH 66/67] x86/boot: Support the watchdog on newer AMD systems + +The MSRs used by setup_k7_watchdog() are architectural in 64bit. The Unit +Select (0x76, cycles not in halt state) isn't, but it hasn't changed in 25 +years, making this a trend likely to continue. + +Drop the family check. If the Unit Select does happen to change meaning in +the future, check_nmi_watchdog() will still notice the watchdog not operating +as expected. + +Signed-off-by: Andrew Cooper +Reviewed-by: Jan Beulich +master commit: 131892e0dcc1265b621c2b7d844cb9e7c3a4404f +master date: 2024-03-19 18:29:37 +0000 +--- + xen/arch/x86/nmi.c | 11 ++++------- + 1 file changed, 4 insertions(+), 7 deletions(-) + +diff --git a/xen/arch/x86/nmi.c b/xen/arch/x86/nmi.c +index dd31034ac8..c7c51614a6 100644 +--- a/xen/arch/x86/nmi.c ++++ b/xen/arch/x86/nmi.c +@@ -386,15 +386,12 @@ void setup_apic_nmi_watchdog(void) + if ( nmi_watchdog == NMI_NONE ) + return; + +- switch (boot_cpu_data.x86_vendor) { ++ switch ( boot_cpu_data.x86_vendor ) ++ { + case X86_VENDOR_AMD: +- switch (boot_cpu_data.x86) { +- case 6: +- case 0xf ... 0x19: +- setup_k7_watchdog(); +- break; +- } ++ setup_k7_watchdog(); + break; ++ + case X86_VENDOR_INTEL: + switch (boot_cpu_data.x86) { + case 6: +-- +2.44.0 + -- cgit v1.2.3-65-gdbad