Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 Jun 2001 20:38:44 -0700 (PDT)
From:      Bill Paul <wpaul@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/dev/nge if_nge.c
Message-ID:  <200106160338.f5G3ciW02406@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
wpaul       2001/06/15 20:38:44 PDT

  Modified files:
    sys/dev/nge          if_nge.c 
  Log:
  Fix the last serious bug I've been chasing:
  
  The DP83820/83821 has an undocumented limitation concerning jumbo frames
  and TX checksum offload. In order for TX checksum offload to work, the
  outgoing frame must fit entirely within the TX FIFO, which is 8192 bytes
  in size. This isn't a problem, until you try to send a 9000-byte frame,
  at which point the TX DMA engine goes to sleep. It turns out that if
  you want to send a jumbo frame larger than 8170 bytes (8192 - 64), you
  have to turn off the TX checksum support.
  
  As a workaround, I changed nge_ioctl() so that if the user selects an
  MTU larger than 8152 bytes, we clear the if_hwassist flags. The flags
  will be set again once the MTU is reduced to a smaller value.
  
  Revision  Changes    Path
  1.11      +43 -25    src/sys/dev/nge/if_nge.c


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200106160338.f5G3ciW02406>