[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180219164223.plclfvimcyiqzh4h@pburton-laptop>
Date: Mon, 19 Feb 2018 08:42:23 -0800
From: Paul Burton <paul.burton@...s.com>
To: David Laight <David.Laight@...LAB.COM>
CC: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
Hassan Naveed <hassan.naveed@...s.com>,
Matt Redfearn <matt.redfearn@...s.com>,
"David S . Miller" <davem@...emloft.net>,
"linux-mips@...ux-mips.org" <linux-mips@...ux-mips.org>
Subject: Re: [PATCH v5 07/14] net: pch_gbe: Fix handling of TX padding
Hi David,
On Mon, Feb 19, 2018 at 02:01:25PM +0000, David Laight wrote:
> From: Paul Burton
> > Sent: 17 February 2018 20:11
> >
> > The ethernet controller found in the Intel EG20T Platform Controller
> > Hub requires that we place 2 bytes of padding between the ethernet
> > header & the packet payload. Our pch_gbe driver handles this by copying
> > packets to be transmitted to a temporary struct skb with the padding
> > bytes inserted
> ...
>
> Uggg WFT is the driver doing that for?
>
> I'd guess that the two byte pad is there so that a 4 byte aligned
> frame is still 4 byte aligned when the 14 byte ethernet header is added.
> So instead of copying the entire frame the MAC header should be built
> (or rebuilt?) two bytes further from the actual data.
I agree - the pch_gbe driver is pretty bad and does a lot of things
wrong. Frankly I'm amazed it's in tree, but it is & one patch series
isn't going to fix all of its shortcomings.
So whilst I totally agree that copying around the whole frame is awful,
it's a separate problem to the length used for DMA mapping being
incorrect which is what this patch addresses & I'd rather not start
adding more & more fixes or cleanups into this initial series before the
driver is even functional on my hardware.
Thanks,
Paul
Powered by blists - more mailing lists