fxp(4) TCP checksum offloading
Andreas Moeller
andreas-moeller at gmx.net
Mon Jan 19 04:18:32 PST 2004
>>I got an Intel PRO/100 S NIC (Intel 82550 chip) which supports TCP
>>checksum offloading. I am also able to load the microcode necessary in
>>
>>order to activate that feature:
>>
>>fxp0: Microcode loaded, int_delay: 1000 usec bundle_max: 6
>
>
> That ain't TCP checksum offloading, that is IRQ mitigation.
> When using IRQ mitigation the FIFO buffer in the network card is used to
> 'delay' interrupts. Up to 6 packets will be buffered for up to 1000usec
> before raising an interrupt. In case more than one packet arrives during
> the 1000usec period only one interrupt is triggered instead of multiple
> thus reducing the time spend for context switching and handling the
> interrupts.
I understand. Thank you for explaining this to me. After further reading
of the ifconfig(8) manual I assume that the fxp(4) driver doesn't
support user-configuration of checksum offloading but enables this
feature if it recognizes hardware capable of it. Is this correct?
My ifconfig(8) output looks as follows:
fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=3<RXCSUM,TXCSUM>
inet 192.168.0.2 netmask 0xffffff00 broadcast 192.168.0.255
inet6 fe80::202:b3ff:fe4c:9c32%fxp0 prefixlen 64 scopeid 0x1
ether 00:02:b3:4c:9c:32
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
>>Unfortunately, when enabled, network connections (at least those based
>>
>>on TCP) start timing out while ping remains working flawlessly. The
>>system in question is running latest -CURRENT source as of today.
>
>
> I cannot reproduce this problem since my box is running 1000baseSX.
>
> As of 5.2-REL you have to enable the sshd and in case security is set to
> 'extreme' sshd won't be fired up. Do you have sshd_enable="YES" in
> /etc/rc.conf?
Yes I do, but I do not set any securelevel. When booting with IRQ
mitigation enabled I have to hit ^C and abort the start of the ssh
daemon because otherwise the boot process won't proceed.
>>Any ideas? (Is there a way to unload the microcode again besides
>>rebooting the system?)
>
>
> $ ifconfig fxp0 -link0
Thanks!
More information about the freebsd-current
mailing list