kern/154959: age: "Bad packet length xxxxx, Disconnecting: Packet corrupt" (unless TSO, rxcsum, txcsum are disabled)

Julien Cigar jcigar at ulb.ac.be
Tue Feb 22 15:10:03 UTC 2011


>Number:         154959
>Category:       kern
>Synopsis:       age: "Bad packet length xxxxx, Disconnecting: Packet corrupt" (unless TSO, rxcsum, txcsum are disabled)
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Feb 22 15:10:02 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator:     Julien Cigar
>Release:        8.2-RELEASE
>Organization:
Université Libre de Bruxelles
>Environment:
FreeBSD dev.lan 8.2-RELEASE FreeBSD 8.2-RELEASE #0: Tue Feb 22 11:58:24 CET 2011     root at dev.lan:/usr/obj/usr/src/sys/CUSTOM  amd64
>Description:
On a Asus P5K motherboard with the following if:

age0 at pci0:2:0:0:        class=0x020000 card=0x82261043 chip=0x10481969 rev=0xb0 hdr=0x00
    vendor     = 'Attansic (Now owned by Atheros)'
    device     = 'Gigabit Ethernet 10/100/1000 Base-T Controller (Atheros L1)'
    class      = network
    subclass   = ethernet

the machine disconnects with a "Bad packet length XXXX" or a "Corrupted MAC on input" message when I unzip a simple file through SSH.
>How-To-Repeat:
jcigar at frodon ~ % ssh dev
(...)
jcigar at dev ~ % cd tmp 
jcigar at dev tmp % unzip elgg-1.7.7.zip
Archive:  elgg-1.7.7.zip
   creating: elgg-1.7.7/
   creating: elgg-1.7.7/engine/
  inflating: elgg-1.7.7/engine/settings.example.php  
   creating: elgg-1.7.7/engine/handlers/
(...)
  inflating: elgg-1.7.7/mod/tinymce/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css  
   creating: elgg-1.7.7/mod/tinymce/tinymce/jscripts/tiny_mce/plugins/fullpage/js/
  inflating: elgg-1.7.7/mod/tinymce/tinymce/jscripts/tiny_mce/plugins/fullpage/js/fullpage.js  
Bad packet length 2190802413.
Disconnecting: Packet corrupt
jcigar at frodon ~ % 

(sometimes it also fails with:
Corrupted MAC on input.
Disconnecting: Packet corrupt)
>Fix:
Disabling tcp segmentation offloading (TSO) and RX/CX checksum offloading on the interface seems to work:

jcigar at dev ~ % sudo ifconfig age0 -rxcsum -txcsum -tso

>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list