git: c13e9968db3b - stable/13 - mca: Add sysctl to mute corrected errors.
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 15 Aug 2022 17:57:23 UTC
The branch stable/13 has been updated by mav: URL: https://cgit.FreeBSD.org/src/commit/?id=c13e9968db3bece3d6dd8d17c0a0bce5ef204967 commit c13e9968db3bece3d6dd8d17c0a0bce5ef204967 Author: Alexander Motin <mav@FreeBSD.org> AuthorDate: 2022-08-05 17:40:57 +0000 Commit: Alexander Motin <mav@FreeBSD.org> CommitDate: 2022-08-15 17:29:13 +0000 mca: Add sysctl to mute corrected errors. Setting hw.mca.log_corrected to 0 will mute corrected errors logging except ones marked as reaching Yellow threshold by hardware. MFC after: 1 week (cherry picked from commit ac64943ca8514382289e6054e8127726a7c40ea3) --- sys/x86/x86/mca.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/sys/x86/x86/mca.c b/sys/x86/x86/mca.c index e3386b5b7459..58630fae0781 100644 --- a/sys/x86/x86/mca.c +++ b/sys/x86/x86/mca.c @@ -109,6 +109,10 @@ static int mca_enabled = 1; SYSCTL_INT(_hw_mca, OID_AUTO, enabled, CTLFLAG_RDTUN, &mca_enabled, 0, "Administrative toggle for machine check support"); +static int log_corrected = 1; +SYSCTL_INT(_hw_mca, OID_AUTO, log_corrected, CTLFLAG_RWTUN, &log_corrected, 0, + "Log corrected errors to the console"); + static int amd10h_L1TP = 1; SYSCTL_INT(_hw_mca, OID_AUTO, amd10h_L1TP, CTLFLAG_RDTUN, &amd10h_L1TP, 0, "Administrative toggle for logging of level one TLB parity (L1TP) errors"); @@ -426,7 +430,12 @@ mca_log(const struct mca_record *rec) uint16_t mca_error; if (mca_mute(rec)) - return; + return; + + if (!log_corrected && (rec->mr_status & MC_STATUS_UC) == 0 && + (!tes_supported(rec->mr_mcg_cap) || + ((rec->mr_status & MC_STATUS_TES_STATUS) >> 53) != 0x2)) + return; printf("MCA: Bank %d, Status 0x%016llx\n", rec->mr_bank, (long long)rec->mr_status);