--- bcm5700/src/mm.h~ 2006-05-11 04:11:56.000000000 -0400 +++ bcm5700/src/mm.h 2006-10-08 11:31:11.000000000 -0400 @@ -27,6 +27,7 @@ #define __NO_VERSION__ #endif #include <linux/version.h> +#include <linux/utsrelease.h> #ifdef MODULE --- bcm5700/src/b57um.c~ 2006-05-11 04:11:56.000000000 -0400 +++ bcm5700/src/b57um.c 2006-10-08 11:54:32.000000000 -0400 @@ -2015,8 +2015,9 @@ #endif #ifdef BCM_TSO - if ((mss = (LM_UINT32) skb_shinfo(skb)->tso_size) && + if (skb_is_gso(skb) && (skb->len > pDevice->TxMtu)) { + mss = (LM_UINT32) skb_shinfo(skb)->gso_size; #if (LINUX_VERSION_CODE >= 0x02060c) --- bcm5700/src/b57um.org.c~ 2006-05-11 04:11:56.000000000 -0400 +++ bcm5700/src/b57um.org.c 2006-10-08 11:54:37.000000000 -0400 @@ -2047,8 +2047,9 @@ #endif #ifdef BCM_TSO - if ((mss = (LM_UINT32) skb_shinfo(skb)->tso_size) && + if (skb_is_gso(skb) && (skb->len > pDevice->TxMtu)) { + mss = (LM_UINT32) skb_shinfo(skb)->gso_size; pUmDevice->tso_pkt_count++;
Attached is a patch to accommodate changes in 2.6.18. I have built this
but do not have the device to test it.