ixgbe: Fix broken dependency on MAX_SKB_FRAGS being related to page size
authorAlexander Duyck <alexander.h.duyck@intel.com>
Thu, 10 Nov 2011 09:09:17 +0000 (09:09 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Thu, 9 Feb 2012 09:26:46 +0000 (01:26 -0800)
commit1b2a632d6943dce7a4381cc687394210f79e851c
tree8ec26ddeda26afaecda3dc437a7602486587039e
parent8f09e10f0104f39fe5bb9e2fba1650a5e058b4fe
ixgbe: Fix broken dependency on MAX_SKB_FRAGS being related to page size

This patch fixes an issue in which RSC will generate corrupted frames when
PAGE_SIZE is larger than 8K.  Specifically it looks like that in 2.6.39 a
change was made so that GRO would always have at least 16 frags available
for coalescing, but the ixgbe RSC logic was not updated.  As such the RSC
feature would generate a frame larger than 64K and then overflow the value
in the IP length field.

To correct that I am now basing things on the PAGE_SIZE.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c