All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [realtek] System hang with heavy network traffic using rtl8139c
@ 2002-06-25  6:53 Stephan Brauss
  0 siblings, 0 replies; only message in thread
From: Stephan Brauss @ 2002-06-25  6:53 UTC (permalink / raw)
  To: linux-kernel

Hello, 

maybe I had a similar problem. In my case, the rtl8139 chip reports
a negative buffer size and a following dev_alloc_skb() crashed my system.
The problem was caused by receive buffer overruns that occur if the CPU is not fast
enough to fetch all data. Please check if you see rtl8139-realted kernel messages 
during the test.
I reported this problem to the realtek list some time ago, but, as far as I know,
it is not included in the test version 1.18 until know.

Here is my patch of rtl8129_rx():

                } else {
                        /* Malloc up new buffer, compatible with net-2e. */
                        /* Omit the four octet CRC from the length. */
                        struct sk_buff *skb;
                        int pkt_size = rx_size - 4;

+                       if(pkt_size<0)
+                       {
+                               if (tp->msg_level & NETIF_MSG_DRV)
+                                       printk(KERN_ERR"%s: Impossible packet length.\n",dev->name);
+                               tp->stats.rx_dropped++;
+                               rtl_hw_start(dev);
+                               break;
+                       }
+
                        skb = dev_alloc_skb(pkt_size + 2);
                        if (skb == NULL) {

Additionally, I think it is a good idea to increase the receive buffer size to the maximum by setting
RX_BUF_LEN_IDX from 2 to 3.
If you read older messages of the realtek list, you can find additional driver changes that are maybe
helpfull for you.

Stephan

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2002-06-25  6:58 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-06-25  6:53 [realtek] System hang with heavy network traffic using rtl8139c Stephan Brauss

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.