This patch fixes a c7000.c bug where packets can be lost under heavy
workload.  Two more c7000.c patches are to come; this is patch 1 of 3.
Marcelo, please apply this patch.

diff -urN linux-2.4.26/drivers/s390/net/c7000.c 
NEWlinux-2.4.26/drivers/s390/net/c7000.c
--- linux-2.4.26/drivers/s390/net/c7000.c       2003-08-25 04:44:42.000000000 -0700
+++ NEWlinux-2.4.26/drivers/s390/net/c7000.c    2004-08-03 14:43:27.000000000 -0700
@@ -1403,6 +1403,7 @@
                        Rechain the buffer on the running channel program.
                */

+               buf->ccws[3].cda = buf->ccws[5].cda = 
(__u32)virt_to_phys(&buf->ccws[6]);
                if (pbuf != NULL)
                        pbuf->ccws[3].cda = pbuf->ccws[5].cda = 
(__u32)virt_to_phys(&buf->ccws[0]);

@@ -2970,7 +2971,7 @@
         dev->addr_len = 0;
         dev->type = ARPHRD_SLIP;
         dev->tx_queue_len = C7000_TXQUEUE_LEN;
-       dev->flags = IFF_NOARP;
+       dev->flags = IFF_BROADCAST|IFF_MULTICAST|IFF_NOARP;
        dev->open = c7000_open;
        dev->stop = c7000_stop;
        dev->set_config = c7000_config;

----------------------------------------------------------------------
For LINUX-390 subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: INFO LINUX-390 or visit
http://www.marist.edu/htbin/wlvindex?LINUX-390

Reply via email to