From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1161878AbcFGQwd (ORCPT ); Tue, 7 Jun 2016 12:52:33 -0400 Received: from mail.skyhub.de ([78.46.96.112]:58897 "EHLO mail.skyhub.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1161445AbcFGQwb (ORCPT ); Tue, 7 Jun 2016 12:52:31 -0400 From: Borislav Petkov To: linux-edac Cc: Tony Luck , Yazen Ghannam , X86 ML , LKML Subject: [R-F-C PATCH 0/4] RFC: x86/mce: Deprecate mcelog and other funsies Date: Tue, 7 Jun 2016 18:52:21 +0200 Message-Id: <1465318345-22043-1-git-send-email-bp@alien8.de> X-Mailer: git-send-email 2.7.3 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Borislav Petkov So this set cannot have a bigger "RFC" tag: It attempts to revive the correctable errors collector. In this version, the thing gets counters in debugfs: (debugfs)/ras/cec/ |-- array `-- pfn which give some stats on the CEC like how many CEs it caught and the number of pages it soft-offlined due to excessive amount of CEs. $ cat ras/cec/array { n: 2 000: [0000000000000012|001] 001: [0000003735928559|e01] } Stats: CEs: 514 offlined pages: 0 Flags: 0x0 Then, we stuck all the /dev/mcelog functionality behind a CONFIG_X86_MCELOG which people can disable if they don't need mcelog and are going to use the rasdaemon. This is probably going to happen sooner or later with the distros anyway. And then, as a result of that move, mce-inject is being made independent from mcelog and gets the error injection debugfs nodes of mce_amd_inj which you can echo into and don't need special tools: $ tree --charset=ascii /sys/kernel/debug/mce-inject/ /sys/kernel/debug/mce-inject/ |-- addr |-- bank |-- cpu |-- flags |-- misc |-- README `-- status 0 directories, 7 files Comments are more than welcome, Tony and will be polishing on those but thought it would be a nice point in time to send them out to get other people's opinions. Thanks. Borislav Petkov (3): RAS: Add a Corrected Errors Collector x86/mce: Merge mce_amd_inj into mce-inject x86/mce-inject: Use debugfs_remove_recursive() Tony Luck (1): x86/mce: Deprecate /dev/mcelog arch/x86/Kconfig | 8 + arch/x86/kernel/cpu/mcheck/Makefile | 2 + arch/x86/kernel/cpu/mcheck/dev-mcelog.c | 397 +++++++++++++++++++++++ arch/x86/kernel/cpu/mcheck/mce-inject.c | 519 +++++++++++++++++++++++++++++- arch/x86/kernel/cpu/mcheck/mce-internal.h | 8 + arch/x86/kernel/cpu/mcheck/mce.c | 513 +++++------------------------ arch/x86/ras/Kconfig | 11 + arch/x86/ras/Makefile | 2 - arch/x86/ras/mce_amd_inj.c | 484 ---------------------------- drivers/ras/Makefile | 3 +- drivers/ras/cec.c | 425 ++++++++++++++++++++++++ drivers/ras/debugfs.c | 2 +- drivers/ras/debugfs.h | 8 + include/linux/ras.h | 12 +- 14 files changed, 1467 insertions(+), 927 deletions(-) create mode 100644 arch/x86/kernel/cpu/mcheck/dev-mcelog.c delete mode 100644 arch/x86/ras/mce_amd_inj.c create mode 100644 drivers/ras/cec.c create mode 100644 drivers/ras/debugfs.h -- 2.7.3