diff -urN linux-2.4.29-bond-2.6.1/drivers/net/bonding/bond_main.c linux-2.4.29-bond-2.6.2/drivers/net/bonding/bond_main.c --- linux-2.4.29-bond-2.6.1/drivers/net/bonding/bond_main.c Sun Feb 6 20:32:49 2005 +++ linux-2.4.29-bond-2.6.2/drivers/net/bonding/bond_main.c Sun Feb 6 20:38:44 2005 @@ -475,6 +475,9 @@ * Solution is to move call to dev_remove_pack outside of the * spinlock. * Set version to 2.6.1. + * 2004/11/09 - Radheka Godse + * - Added Zero Copy Transmit Support by setting appropriate flags. + * Set version to 2.6.2. * */ @@ -4325,6 +4328,21 @@ NETIF_F_HW_VLAN_RX | NETIF_F_HW_VLAN_FILTER); + /* We let the bond device publish all hardware + * acceleration features possible. This is OK, + * since if an skb is passed from the bond to + * a slave that doesn't support one of those + * features, everything is fixed in the + * dev_queue_xmit() function (e.g. calculate + * check sum, linearize the skb, etc.). + */ + bond_dev->features |= (NETIF_F_SG | + NETIF_F_IP_CSUM | + NETIF_F_NO_CSUM | + NETIF_F_HW_CSUM | + NETIF_F_HIGHDMA | + NETIF_F_FRAGLIST); + #ifdef CONFIG_PROC_FS bond_create_proc_entry(bond); #endif