IP bad-len 0 ( on em0 )

Vitezslav Novy vnovy at vnovy.net
Tue Mar 11 04:15:42 PDT 2008

Nikolay Pavlov wrote:
> On Monday 10 March 2008 23:26:39 Vitezslav Novy wrote:
>> Steven Hartland wrote:
>>> Did you ever get anywhere with this? Did Jack respond?
>>> ----- Original Message ----- From: "Nikolay Pavlov" <qpadla at gmail.com>
>>> On Wednesday 06 February 2008 19:12:20 Vitezslav Novy wrote:
>>>>>> Do you have set TSO flag on interface?
>>>>> Good catch. The problem is gone with net.inet.tcp.tso set to 0.
>>>>> But TSO is enabled by default in 7.0. Could this be a em driver
>>>>> bug?
>>>> I don't know. I only saw this when researched another TSO related
>>>> problem.
>>>> vita
>>> May be Jack could say something about this?
>> It is TSO related problem of em driver.
>> Affects only cards with adapter->hw.mac.type < e1000_82575.
>> During transmit function em_tso_setup is called and this function sets
>> packet ip_len field to zero. (also ip csum)
>> After successful transmit, packet is injected to BPF with zeroed ip_len
>>   field.
> So this is driver or hardware problem? Should i change a network card?

It is driver problem.

If I understand code, driver has 2 transmit routines, one for older 
cards a one for newer. I checked routine for my (older type) card, and 
found problem in em_tso_setup.

But now I see that ip_len is zeroed also in em_tso_adv_setup which is 
used with newer cards.


More information about the freebsd-current mailing list