lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1ebe845b-322b-4929-9093-b41074e9e939@mixaill.net>
Date: Sun, 6 Jul 2025 19:42:39 +0300
From: Mikhail Paulyshka <me@...aill.net>
To: Borislav Petkov <bp@...en8.de>
Cc: Mario Limonciello <mario.limonciello@....com>,
 Thomas Gleixner <tglx@...utronix.de>, Ingo Molnar <mingo@...hat.com>,
 Dave Hansen <dave.hansen@...ux.intel.com>, x86@...nel.org,
 linux-kernel@...r.kernel.org, Rik van Riel <riel@...riel.com>
Subject: Re: [PATCH v2 1/1] x86/rdrand: disable RDSEED on AMD Cyan Skillfish

On 6/17/25 11:05 PM, Borislav Petkov wrote:
> Does this one work too?

It works, however, there is another issue with the BC250 that appeared 
since Linux 6.15.

Commit 4afeb0ed1753ebcad93ee3b45427ce85e9c8ec40 ( x86/mm: Enable 
broadcast TLB invalidation for multi-threaded processes)[1], merged in 
Linux 6.15-rc1, breaks the device — it starts to oops and panic under 
any load [2].

[1] 
https://docs.google.com/spreadsheets/d/1kJleOY5k-YREGak1pQhVWIGckA9YA3OWJyCbybZbk00/edit?gid=0#gid=0
[2] https://mixaill.net/linux-kernel-lists/bc250_log_invlpgb-1.txt

Clearing the X86_FEATURE_INVLPGB cap helps and the device works normally 
again.

It would be great to have this change backported to 6.15 and 6.16 as the 
device is currently unstable with these kernels.

---
 From 064c91c5f3fc02a6eecd6b0b7cf074e2d0eb75aa Mon Sep 17 00:00:00 2001
From: Mikhail Paulyshka <me@...aill.net>
Date: Sun, 6 Jul 2025 01:46:46 +0300
Subject: [PATCH 2/2] x86/cpu/amd: disable INVLPGB on AMD Cyan Skillfish

AMD Cyan Skillfish (Family 17h, Model 47h, Stepping 0h) has an issue that
causes system oopses and panics when performing TLB flush using INVLPGB.

Clearing the X86_FEATURE_INVLPGB flag restoring system stability.

Signed-off-by: Mikhail Paulyshka <me@...aill.net>
---
  arch/x86/kernel/cpu/amd.c | 6 ++++++
  1 file changed, 6 insertions(+)

diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c
index 21072f84071a..89b74203396e 100644
--- a/arch/x86/kernel/cpu/amd.c
+++ b/arch/x86/kernel/cpu/amd.c
@@ -935,6 +935,12 @@ static void init_amd_zen2(struct cpuinfo_x86 *c)
          msr_clear_bit(MSR_AMD64_CPUID_FN_7, 18);
          pr_emerg("RDSEED is not reliable on this platform; disabling.\n");
      }
+
+    /* Disable INVLPGB on AMD Cyan Skillfish because of an error */
+    if (c->x86_model == 0x47 && c->x86_stepping == 0x0) {
+        clear_cpu_cap(c, X86_FEATURE_INVLPGB);
+        pr_emerg("INVLPGB is not reliable on this platform; disabling.\n");
+    }
  }

  static void init_amd_zen3(struct cpuinfo_x86 *c)
-- 
2.50.0



Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ