larger than 1500 MTU support for 8139too - request for comments
From: Tim Small <hidden>
Date: 2013-07-27 21:52:29
Attachments
- 8139too-mtu.diff [text/x-patch] 1873 bytes · preview
From: Tim Small <hidden>
Date: 2013-07-27 21:52:29
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.