]> git.baikalelectronics.ru Git - kernel.git/commitdiff
can: mcp251xfd: mcp251xfd_handle_rxovif(): denote RX overflow message to debug +...
authorMarc Kleine-Budde <mkl@pengutronix.de>
Mon, 15 Nov 2021 19:12:05 +0000 (20:12 +0100)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Sat, 8 Jan 2022 19:17:42 +0000 (20:17 +0100)
A RX overflow usually happens during high system load. Printing
overflow messages to the kernel log, which on embedded systems often
is outputted on the serial console, even increases the system load.

To decrease the system load in these situations, denote the messages
to debug level and wrap them with net_ratelimit().

Link: https://lore.kernel.org/all/20220105154300.1258636-7-mkl@pengutronix.de
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c

index a01a3fc3b13c41019416e97b899b8683deac52ec..105426dcf06507d0abb10336fd229fba951716aa 100644 (file)
@@ -1652,12 +1652,15 @@ static int mcp251xfd_handle_rxovif(struct mcp251xfd_priv *priv)
 
                /* If SERRIF is active, there was a RX MAB overflow. */
                if (priv->regs_status.intf & MCP251XFD_REG_INT_SERRIF) {
-                       netdev_info(priv->ndev,
-                                   "RX-%d: MAB overflow detected.\n",
-                                   ring->nr);
+                       if (net_ratelimit())
+                               netdev_dbg(priv->ndev,
+                                          "RX-%d: MAB overflow detected.\n",
+                                          ring->nr);
                } else {
-                       netdev_info(priv->ndev,
-                                   "RX-%d: FIFO overflow.\n", ring->nr);
+                       if (net_ratelimit())
+                               netdev_dbg(priv->ndev,
+                                          "RX-%d: FIFO overflow.\n",
+                                          ring->nr);
                }
 
                err = regmap_update_bits(priv->map_reg,