From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
To: Alexander Duyck <alexander.h.duyck@redhat.com>,
Aaron Brown <aaron.f.brown@intel.com>
Cc: intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org,
mike@cchtml.com, htodd@twofifty.com
Subject: Re: [PATCH] e1000e: Cleanup handling of VLAN_HLEN as a part of max frame size
Date: Wed, 08 Apr 2015 17:01:36 -0700 [thread overview]
Message-ID: <1428537696.2729.4.camel@jtkirshe-mobl> (raw)
In-Reply-To: <20150408204630.4643.37880.stgit@ahduyck-vm-fedora22>
[-- Attachment #1: Type: text/plain, Size: 2362 bytes --]
On Wed, 2015-04-08 at 14:02 -0700, Alexander Duyck wrote:
> When the VLAN_HLEN was added to the calculation for the maximum frame
> size
> there seems to have been a number of issues added to the driver.
>
> The first issue is that in some cases the maximum frame size for a
> device
> never really reached the actual maximum frame size as the VLAN header
> length was not included the calculation for that value. As a result
> some
> parts only supported a maximum frame size of either 1496 in the case
> of
> parts that didn't support jumbo frames, and 8996 in the case of the
> parts
> that do.
>
> The second issue is the fact that there were several checks that
> weren't
> updated so as a result setting an MTU of 1500 was treated as enabling
> jumbo
> frames as the calculated value was 1522 instead of 1518. I have
> addressed
> those by replacing ETH_FRAME_LEN with VLAN_ETH_FRAME_LEN where
> appropriate.
>
> The final issue was the fact that lowering the MTU below 1500 would
> cause
> the driver to allocate 2K buffers for the rings. This is an old issue
> that
> was fixed several years ago in igb/ixgbe and I am addressing now by
> just
> replacing == with a <= so that we always just round up to 1522 for
> anything
> that isn't a jumbo frame.
>
> Fixes: c751a3d58cf2d ("e1000e: Correctly include VLAN_HLEN when
> changing interface MTU")
> Signed-off-by: Alexander Duyck <alexander.h.duyck@redhat.com>
> ---
>
> I have only build tested this though I am 99% sure the fixes here are
> correct. This patch should fix issues on 82573 and ich8 w/ setting an
> MTU
> of 1500, and for the PCH series w/ setting an MTU of 9000.
>
> I assume I can get away with bumping the max_hw_frame_size for the PCH
> parts from 9018 to 9022 based on the fact that the Windows INF for the
> parts
> lists supporting either 1514, 4088, and 9014 all of which exclude the
> 8
> bytes for CRC and VLAN header.
>
> drivers/net/ethernet/intel/e1000e/82571.c | 2 +-
> drivers/net/ethernet/intel/e1000e/ich8lan.c | 10 +++++-----
> drivers/net/ethernet/intel/e1000e/netdev.c | 18 ++++++++----------
> 3 files changed, 14 insertions(+), 16 deletions(-)
I have applied your patch to my queue, thanks Alex.
--
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue.git
dev-queue
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
next prev parent reply other threads:[~2015-04-09 0:01 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-06 16:38 e1000e max frame calculation Michael Cronenworth
2015-04-06 18:38 ` Alexander Duyck
2015-04-06 21:45 ` Michael Cronenworth
2015-04-06 23:17 ` Alexander Duyck
2015-04-07 3:47 ` Hisashi T Fujinaka
2015-04-08 17:17 ` Alexander Duyck
2015-04-08 17:25 ` Hisashi T Fujinaka
2015-04-08 21:02 ` [PATCH] e1000e: Cleanup handling of VLAN_HLEN as a part of max frame size Alexander Duyck
2015-04-08 21:15 ` Hisashi T Fujinaka
2015-04-08 22:58 ` Alexander Duyck
2015-04-08 23:05 ` Hisashi T Fujinaka
2015-04-08 23:13 ` Alexander Duyck
2015-04-09 0:10 ` Hisashi T Fujinaka
2015-04-09 0:26 ` Hisashi T Fujinaka
2015-04-09 1:19 ` Alexander Duyck
2015-04-09 6:17 ` [Intel-wired-lan] " Templeman, Chaim
2015-04-09 15:51 ` Alexander Duyck
2015-04-13 18:26 ` Templeman, Chaim
2015-04-09 0:01 ` Jeff Kirsher [this message]
2015-04-09 4:48 ` Michael Cronenworth
2015-04-21 2:38 ` [Intel-wired-lan] " Brown, Aaron F
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1428537696.2729.4.camel@jtkirshe-mobl \
--to=jeffrey.t.kirsher@intel.com \
--cc=aaron.f.brown@intel.com \
--cc=alexander.h.duyck@redhat.com \
--cc=htodd@twofifty.com \
--cc=intel-wired-lan@lists.osuosl.org \
--cc=mike@cchtml.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).