>Number:         152853
>Category:       kern
>Synopsis:       tftpd (and likely other udp traffic) fails over em(4) unless 
>rxcsum/txcsum disabled
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Dec 05 21:30:08 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Mike Andrews
>Release:        FreeBSD 8.2-PRERELEASE amd64
>Organization:
Fark, Inc
>Environment:
System: FreeBSD bat.int.bit0.com 8.2-PRERELEASE FreeBSD 8.2-PRERELEASE #20: Sat 
Nov 27 23:00:34 EST 2010 [email protected]:/usr/obj/usr/src/sys/BIT0 
amd64


>Description:
        The tftp server in FreeBSD fails to send any packets -- when a write
        request comes in (in this example, from a Cisco IOS router), tcpdump
        shows that FreeBSD receives the write reqeust but then its tftp server
        never sends a single packet out in response, and the transfer never
        starts:

        Dec  5 14:22:29 <ftp.info> bat tftpd[453]: Filename: 'moat-confg'
        Dec  5 14:22:29 <ftp.info> bat tftpd[453]: Mode: 'octet'
        Dec  5 14:22:29 <ftp.info> bat tftpd[453]: 172.27.0.1: write request 
for //moat-confg: success
        Dec  5 14:22:34 <ftp.warn> bat tftpd[453]: Timeout #0 on DATA block 1
        Dec  5 14:22:39 <ftp.warn> bat tftpd[453]: Timeout #1 on DATA block 1
        Dec  5 14:22:44 <ftp.warn> bat tftpd[453]: Timeout #2 on DATA block 1
        Dec  5 14:22:49 <ftp.warn> bat tftpd[453]: Timeout #3 on DATA block 1
        Dec  5 14:22:54 <ftp.warn> bat tftpd[453]: Timeout #4 on DATA block 1
        Dec  5 14:22:59 <ftp.err> bat tftpd[453]: Timeout #5 on DATA block 1, 
giving up

        On a complete whim, I tried disabling TSO4, TXCSUM, and RXCSUM on the
        NIC, and to my surprise I found that disabling the latter two made the
        problem disappear.  TSO had no effect -- as you'd expect since tftp is
        UDP based :)

        I have not checked to see if this is em(4) specific or what other UDP
        based services it might affect.  It appears that DNS on the same system
        works fine...

>How-To-Repeat:
        On a system with an Intel gigabit NIC, start a tftp server (via inetd)
        and try to write a file to it.

>Fix:
        ifconfig em0 -rxcsum -txcsum

        (It doesn't appear you can turn just one or the other off.)


>Release-Note:
>Audit-Trail:
>Unformatted:
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "[email protected]"

Reply via email to