diff -durN linux-2.4.17/drivers/net/tulip.orig/interrupt.c linux-2.4.17/drivers/net/tulip/interrupt.c --- linux-2.4.17/drivers/net/tulip.orig/interrupt.c Fri Nov 9 22:45:35 2001 +++ linux-2.4.17/drivers/net/tulip/interrupt.c Thu Feb 21 18:34:15 2002 @@ -128,8 +128,8 @@ dev->name, entry, status); if (--rx_work_limit < 0) break; - if ((status & 0x38008300) != 0x0300) { - if ((status & 0x38000300) != 0x0300) { + if ((status & (0x38000000|RxDescFatalErr|RxWholePkt)) != RxWholePkt) { + if ((status & (0x38000000|RxWholePkt)) != RxWholePkt) { /* Ingore earlier buffers. */ if ((status & 0xffff) != 0x7fff) { if (tulip_debug > 1) @@ -155,10 +155,10 @@ struct sk_buff *skb; #ifndef final_version - if (pkt_len > 1518) { + if (pkt_len > 1522) { printk(KERN_WARNING "%s: Bogus packet size of %d (%#x).\n", dev->name, pkt_len, pkt_len); - pkt_len = 1518; + pkt_len = 1522; tp->stats.rx_length_errors++; } #endif diff -durN linux-2.4.17/drivers/net/tulip.orig/tulip.h linux-2.4.17/drivers/net/tulip/tulip.h --- linux-2.4.17/drivers/net/tulip.orig/tulip.h Fri Feb 15 19:48:16 2002 +++ linux-2.4.17/drivers/net/tulip/tulip.h Thu Feb 21 18:30:48 2002 @@ -186,7 +186,7 @@ enum desc_status_bits { DescOwned = 0x80000000, - RxDescFatalErr = 0x8000, + RxDescFatalErr = 0x4842, RxWholePkt = 0x0300, }; @@ -264,7 +264,7 @@ #define MEDIA_MASK 31 -#define PKT_BUF_SZ 1536 /* Size of each temporary Rx buffer. */ +#define PKT_BUF_SZ 1540 /* Size of each temporary Rx buffer. */ #define TULIP_MIN_CACHE_LINE 8 /* in units of 32-bit words */ diff -durN linux-2.4.17/drivers/net/tulip.orig/tulip_core.c linux-2.4.17/drivers/net/tulip/tulip_core.c --- linux-2.4.17/drivers/net/tulip.orig/tulip_core.c Fri Feb 15 17:55:12 2002 +++ linux-2.4.17/drivers/net/tulip/tulip_core.c Thu Feb 21 18:31:40 2002 @@ -63,7 +63,7 @@ #if defined(__alpha__) || defined(__arm__) || defined(__hppa__) \ || defined(__sparc_) || defined(__ia64__) \ || defined(__sh__) || defined(__mips__) -static int rx_copybreak = 1518; +static int rx_copybreak = 1522; #else static int rx_copybreak = 100; #endif