diff mbox

usbnet: ratelimit warning messages invoked from callback handler

Message ID b8bf37780905270940k7523d0of337111dcb80861@mail.gmail.com
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

André Goddard Rosa May 27, 2009, 4:40 p.m. UTC
Hi,

    please cc: me as I'm not subscribed.

Thank you,
Andre

Comments

David Miller May 30, 2009, 5:14 a.m. UTC | #1
From: André Goddard Rosa <andre.goddard@gmail.com>
Date: Wed, 27 May 2009 13:40:44 -0300

>     usbnet: ratelimit warning messages invoked from callback handler
>     
>     Warning messages coming from rtl8150 driver can flood the console
>     and make a DTV/set-top-box unable to decode video/audio frames.
>     
>     'Pegasus' driver handles this situation similarly, preventing this
>     from happening there.
>     
>     It happens with a low cost BCM MIPS embedded platform, whenever
>     timeout errors were coming from usbnet device, making platform
>     unusable for viewer watching.
>     
>     Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
> 

Applied to net-next-2.6, thanks.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

commit 9db992ae115c58dc457bc2b1e6fad03252552747
Author: André Goddard Rosa <andre.goddard@gmail.com>
Date:   Wed May 27 10:22:55 2009 -0300

    usbnet: ratelimit warning messages invoked from callback handler
    
    Warning messages coming from rtl8150 driver can flood the console
    and make a DTV/set-top-box unable to decode video/audio frames.
    
    'Pegasus' driver handles this situation similarly, preventing this
    from happening there.
    
    It happens with a low cost BCM MIPS embedded platform, whenever
    timeout errors were coming from usbnet device, making platform
    unusable for viewer watching.
    
    Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>

diff --git a/drivers/net/usb/rtl8150.c b/drivers/net/usb/rtl8150.c
index f9fb454..fcc6fa0 100644
--- a/drivers/net/usb/rtl8150.c
+++ b/drivers/net/usb/rtl8150.c
@@ -221,7 +221,8 @@  static void ctrl_callback(struct urb *urb)
 	case -ENOENT:
 		break;
 	default:
-		dev_warn(&urb->dev->dev, "ctrl urb status %d\n", status);
+		if (printk_ratelimit())
+			dev_warn(&urb->dev->dev, "ctrl urb status %d\n", status);
 	}
 	dev = urb->context;
 	clear_bit(RX_REG_SET, &dev->flags);
@@ -442,10 +443,12 @@  static void read_bulk_callback(struct urb *urb)
 	case -ENOENT:
 		return;	/* the urb is in unlink state */
 	case -ETIME:
-		dev_warn(&urb->dev->dev, "may be reset is needed?..\n");
+		if (printk_ratelimit())
+			dev_warn(&urb->dev->dev, "may be reset is needed?..\n");
 		goto goon;
 	default:
-		dev_warn(&urb->dev->dev, "Rx status %d\n", status);
+		if (printk_ratelimit())
+			dev_warn(&urb->dev->dev, "Rx status %d\n", status);
 		goto goon;
 	}