[<prev] [next>] [day] [month] [year] [list]
Message-ID: <51F43D0E.3020303@buttersideup.com>
Date: Sat, 27 Jul 2013 22:35:10 +0100
From: Tim Small <tim@...tersideup.com>
To: netdev@...r.kernel.org
Subject: larger than 1500 MTU support for 8139too - request for comments
I'm interested in enabling > 1500 octet MTU support for the 8139 so that
I can use it for GRE and PPPoE etc. encapsulation with a 1500 MTU
payload - the datasheet suggests that it'll receive 4k frames, but it
the 8139B and 8139D which I have seem to stop receiving packets with an
MTU of more than 1722 (the cards start logging receive errors). Still -
plenty for 'mini jumbos' / 'baby giants' or whatever you want to call
them. I've tried poking a few other things in the driver to see if I
can improve on this without success.
The patch is pretty straightforward - the only possible downside which I
can see in normal operation is that the total tx buffer size goes from
6144 bytes to 6944 bytes.
I think I have a few other 8139 variant cards somewhere, but before I
try to find them and do further testing with more real and virtual
hardware (I'm currently working on 3.2.46 - because that's my distro
kernel), I thought I'd see if this was likely to be accepted upstream at
all?
As an MTU of 1600 seems to be what's frequently defined as 'baby giant'
for encapsulation purposes, I was wondering if this would be a better
figure to pick (tx buffer alloc goes from 6144 to 6544 bytes). I assume
that I shouldn't bother to implement dynamic buffer allocation for that
gain of 400 bytes, but perhaps that's wrong?
Alternatively, if anyone has any other ideas for getting 4k frames
working on these chips, it'd be interesting to see if that'd work.
Thanks,
Tim.
View attachment "8139too-mtu.diff" of type "text/x-patch" (1874 bytes)
Powered by blists - more mailing lists