Michael Chan <mchan <at> broadcom.com> writes: > > Turning off ASF is just a matter of changing some bits in NVRAM > and recalculating the checksum. If you need the tool to do this, > I'll have someone send it to you. > > Note that on some of the blade servers, I believe ASF is vital > and should not be disabled.
Still, it would be great if ASF could be disabled, because I have noticed that when ASF is enabled, the tg3 driver automatically disables TSO (TCP Segmentation Offloading). Here is a dmesg output from a server where I am seeing that behavior: eth0: Tigon3 [partno(BCM95704A6) rev 2100 PHY(5704)] (PCIX:133MHz:64-bit) \ 10/100/1000BaseT Ethernet 00:30:48:59:c4:94 eth0: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[1] Split[0] WireSpeed[1] TSOcap[0] [...] eth1: Tigon3 [partno(BCM95704A6) rev 2100 PHY(5704)] (PCIX:133MHz:64-bit) \ 10/100/1000BaseT Ethernet 00:30:48:59:c4:95 eth1: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[0] Split[0] WireSpeed[1] TSOcap[1] Both interfaces are fundamentally TSO-capable, but since ASF is enabled on eth0, tg3 disables TSO on this interface. Of course at this point it is not even possible to use ethtool to re-enable it because the driver considers eth0 as not TSO-capable at all. As far as I know, the tg3 driver has been doing that since one of your patches shipped with 2.6.11-rc2-bk3, Michael, see [1]. Here is the relevant code snippet (line numbers are for 2.6.16): 10835 if (tp->tg3_flags2 & TG3_FLG2_HW_TSO) { 10836 tp->tg3_flags2 |= TG3_FLG2_TSO_CAPABLE; 10837 } 10838 else if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5700 || 10839 GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5701 || 10840 tp->pci_chip_rev_id == CHIPREV_ID_5705_A0 || 10841 (tp->tg3_flags & TG3_FLAG_ENABLE_ASF) != 0) { 10842 tp->tg3_flags2 &= ~TG3_FLG2_TSO_CAPABLE; 10843 } else { 10844 tp->tg3_flags2 |= TG3_FLG2_TSO_CAPABLE; 10845 } The culprit is line 10841. Why is that done ? [1] ftp://ftp.us.kernel.org:/pub/linux/kernel/v2.6/snapshots/old/ patch-2.6.11-rc2-bk3.log, patch-2.6.11-rc2-bk3.bz2 -- Marc Bevand - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html