diff mbox

r8169 hard-freezes the system on big network loads

Message ID 20110823131726.GA21092@electric-eye.fr.zoreil.com
State RFC, archived
Delegated to: David Miller
Headers show

Commit Message

Francois Romieu Aug. 23, 2011, 1:17 p.m. UTC
Francois Romieu <romieu@fr.zoreil.com> :
[...]
> Yes. There is enough data for me to reproduce the bug with the
> exact same chipset.

I can not generate a single rx error and the driver refuses to crash :o/ 

Can you apply the patch below on top of 3.1.0-rc3 and see if it makes
a difference ?

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

Comments

Michael Brade Sept. 11, 2011, 8:16 p.m. UTC | #1
On Tuesday 23 August 2011 15:17:26 Francois Romieu wrote:
> Francois Romieu <romieu@fr.zoreil.com> :
> [...]
> 
> > Yes. There is enough data for me to reproduce the bug with the
> > exact same chipset.
> 
> I can not generate a single rx error and the driver refuses to crash :o/
> 
> Can you apply the patch below on top of 3.1.0-rc3 and see if it makes
> a difference ?

Sorry for the delay, I have had only two days for email in the last few weeks 
and additionally kernel.org was and still is down.

Does it have to be 3.1.0-rc3 or is 3.0.1 ok as well? If so, I have another bad 
news: 3.0.1 still crashes with this patch. It took me a lot longer to crash it 
but eventually it did happen. Not sure why it took longer, I guess I didn't 
generate enough throughput.

If you want me to use 3.1.0 then we'll have to wait until git.kernel.org is 
back...

thanks,
  Michael


 
> Thanks.
> 
> diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c
> index 02339b3..c54ed17 100644
> --- a/drivers/net/r8169.c
> +++ b/drivers/net/r8169.c
> @@ -5326,10 +5326,6 @@ static int rtl8169_rx_interrupt(struct net_device
> *dev, dev->stats.rx_length_errors++;
>  			if (status & RxCRC)
>  				dev->stats.rx_crc_errors++;
> -			if (status & RxFOVF) {
> -				rtl8169_schedule_work(dev, rtl8169_reset_task);
> -				dev->stats.rx_fifo_errors++;
> -			}
>  			rtl8169_mark_to_asic(desc, rx_buf_sz);
>  		} else {
>  			struct sk_buff *skb;
--
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

diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c
index 02339b3..c54ed17 100644
--- a/drivers/net/r8169.c
+++ b/drivers/net/r8169.c
@@ -5326,10 +5326,6 @@  static int rtl8169_rx_interrupt(struct net_device *dev,
 				dev->stats.rx_length_errors++;
 			if (status & RxCRC)
 				dev->stats.rx_crc_errors++;
-			if (status & RxFOVF) {
-				rtl8169_schedule_work(dev, rtl8169_reset_task);
-				dev->stats.rx_fifo_errors++;
-			}
 			rtl8169_mark_to_asic(desc, rx_buf_sz);
 		} else {
 			struct sk_buff *skb;