]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
x86/mce: Don't remove sysfs if thresholding sysfs init fails
authorYazen Ghannam <yazen.ghannam@amd.com>
Tue, 24 Jun 2025 14:15:56 +0000 (14:15 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Jul 2025 16:30:49 +0000 (18:30 +0200)
commit 4c113a5b28bfd589e2010b5fc8867578b0135ed7 upstream.

Currently, the MCE subsystem sysfs interface will be removed if the
thresholding sysfs interface fails to be created. A common failure is due to
new MCA bank types that are not recognized and don't have a short name set.

The MCA thresholding feature is optional and should not break the common MCE
sysfs interface. Also, new MCA bank types are occasionally introduced, and
updates will be needed to recognize them. But likewise, this should not break
the common sysfs interface.

Keep the MCE sysfs interface regardless of the status of the thresholding
sysfs interface.

Signed-off-by: Yazen Ghannam <yazen.ghannam@amd.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Reviewed-by: Qiuxu Zhuo <qiuxu.zhuo@intel.com>
Reviewed-by: Tony Luck <tony.luck@intel.com>
Tested-by: Tony Luck <tony.luck@intel.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/20250624-wip-mca-updates-v4-1-236dd74f645f@amd.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/x86/kernel/cpu/mce/core.c

index 30d822c2e5c0f0aaf0a031b18317f02c2904afb6..e8a25b3c02722e34fd05d692d85ef519680df07c 100644 (file)
@@ -2620,15 +2620,9 @@ static int mce_cpu_dead(unsigned int cpu)
 static int mce_cpu_online(unsigned int cpu)
 {
        struct timer_list *t = this_cpu_ptr(&mce_timer);
-       int ret;
 
        mce_device_create(cpu);
-
-       ret = mce_threshold_create_device(cpu);
-       if (ret) {
-               mce_device_remove(cpu);
-               return ret;
-       }
+       mce_threshold_create_device(cpu);
        mce_reenable_cpu();
        mce_start_timer(t);
        return 0;