cb2f755c7f
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. |
||
---|---|---|
.. | ||
if_nge.c | ||
if_ngereg.h |