[PATCH] drivers/isdn/gigaset: reduce kernel message spam
Tilman Schmidt [Mon, 12 Feb 2007 08:52:26 +0000 (00:52 -0800)]
Reduce the number of kernel messages the Gigaset drivers produce in case of an
excessively long device response, from one per character exceeding the limit
to one per overlong message.

Signed-off-by: Tilman Schmidt <tilman@imap.cc>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

drivers/isdn/gigaset/isocdata.c

index df988eb..8c0eb52 100644 (file)
@@ -921,6 +921,8 @@ static void cmd_loop(unsigned char *src, int numbytes, struct inbuf_t *inbuf)
                        /* end of line */
                        gig_dbg(DEBUG_TRANSCMD, "%s: End of Command (%d Bytes)",
                                __func__, cbytes);
+                       if (cbytes >= MAX_RESP_SIZE - 1)
+                               dev_warn(cs->dev, "response too large\n");
                        cs->cbytes = cbytes;
                        gigaset_handle_modem_response(cs);
                        cbytes = 0;
@@ -929,8 +931,6 @@ static void cmd_loop(unsigned char *src, int numbytes, struct inbuf_t *inbuf)
                        /* advance in line buffer, checking for overflow */
                        if (cbytes < MAX_RESP_SIZE - 1)
                                cbytes++;
-                       else
-                               dev_warn(cs->dev, "response too large\n");
                }
        }