Re: [PATCH 2.6.14-rc2] aoe [1/2]: explicitly set minimum packet length to ETH_ZLEN

Ed L Cashin
2005-09-26T19:33:42Z

Alan Cox <alan@lxorguk.ukuu.org.uk> writes:

> On Llu, 2005-09-26 at 12:50 -0400, Ed L Cashin wrote:
>> > skb = alloc_skb(len, GFP_ATOMIC);
>>
>> This change fixes some strange problems observed on a system that was
>> using the e1000 network driver. Is the network driver supposed to
>> ensure that ethernet packets are up to spec, at least 60 bytes long?
>
> The network driver is supposed to pad frames if the hardware cannot and
> to blank the spare bits.

Ah ha.

> If it isn't occurring please try and trace down
> the offender.

My colleague Sam observed problems with the e1000 driver in the
2.6.11.4-21.9-smp kernel from Suse 9.3 and also the e1000 driver in
2.6.12-1.1398_FC4smp from Fedora Core 4.

The problems aren't fully characterized, but AoE ATA read packets
appeared to be getting dropped and/or corrupted.

When using the tg3 driver instead of e1000 the problems went away, and
making the aoe driver alloc_skb with a minimum length of ETH_ZLEN also
made the problems go away.

--
Ed L Cashin <ecashin@coraid.com>