From 74800c5a08367dff4ffe79bd4d20f76dc7d40928 Mon Sep 17 00:00:00 2001 From: "Jonathan T. Looney" Date: Fri, 6 Apr 2018 15:15:21 +0000 Subject: [PATCH] In cases where an application issues certain IPMI commands at a high enough rate, the IPMI code can print large numbers of messages to the console, such as: ipmi0: KCS: Failed to read completion code ipmi0: KCS error: ff ipmi0: KCS: Failed to read completion code ipmi0: KCS error: ff These seem to be innocuous from a system standpoint, and the user- space code can deal with the failures. Therefore, suppress printing these messages to the console unless bootverbose is enabled. Obtained from: Netflix, Inc. --- sys/dev/ipmi/ipmi_kcs.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sys/dev/ipmi/ipmi_kcs.c b/sys/dev/ipmi/ipmi_kcs.c index ba6b0916236c..9717480fd66b 100644 --- a/sys/dev/ipmi/ipmi_kcs.c +++ b/sys/dev/ipmi/ipmi_kcs.c @@ -150,7 +150,7 @@ kcs_error(struct ipmi_softc *sc) /* Read error status */ data = INB(sc, KCS_DATA); - if (data != 0) + if (data != 0 && (data != 0xff || bootverbose)) device_printf(sc->ipmi_dev, "KCS error: %02x\n", data); @@ -416,8 +416,10 @@ kcs_polled_request(struct ipmi_softc *sc, struct ipmi_request *req) /* Next we read the completion code. */ if (kcs_read_byte(sc, &req->ir_compcode) != 1) { - device_printf(sc->ipmi_dev, - "KCS: Failed to read completion code\n"); + if (bootverbose) { + device_printf(sc->ipmi_dev, + "KCS: Failed to read completion code\n"); + } goto fail; } #ifdef KCS_DEBUG