ixbge: fix bug when using large pages and jumbo frames
authorJesse Brandeburg <jesse.brandeburg@intel.com>
Wed, 25 Feb 2009 00:37:31 +0000 (16:37 -0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 25 Feb 2009 00:37:31 +0000 (16:37 -0800)
commit32344a394029baeca5bcc9fa839694b23a82cc64
tree47360c3dd12fcc7aa100547ee3becbe9d0961a3d
parentc7e4358ae8e49f85a4d528366046da26b36a712f
ixbge: fix bug when using large pages and jumbo frames

it was pointed out on the list that ixgbe was failing when using 64kB pages
and large 16kB MTU.

since with a 64kB PAGE_SIZE MAX_SKB_FRAGS = 3, the way the driver was
configuring page usage was assuming 2kB is half a page, and was only
ever dmaing that much data to a half page.

(16kB - header size) / 2048 = 7 or 8 pages, which would far exceed 3

adjust the driver to account for these large pages, the hardware can
support DMA to up to 16kB for each descriptor.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ixgbe/ixgbe.h
drivers/net/ixgbe/ixgbe_main.c