linux_dsm_epyc7002/drivers/net/ethernet/intel
Mitch Williams f16704e5e8 i40e/i40evf: use pages correctly in Rx
Refactor the packet split Rx code to properly use half-pages for
receives. The previous code was doing way more mapping and unmapping
than it needed to, and wasn't properly using half-pages.

Increment the page use count each time we give a half-page to an skb,
knowing that the stack will probably process and release the page before
we need it again. Only free and reallocate pages if the count shows that
both half-pages are in use. Add counters to track reallocations and page
reuse.

Change-ID: I534b299196036b64be82b4861a0a4036310a8f22
Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2016-02-17 15:22:22 -08:00
..
e1000 e1000: Elementary checkpatch warnings and checks removed 2015-12-12 23:13:52 -08:00
e1000e e1000e: Fix msi-x interrupt automask 2015-12-14 20:19:47 -08:00
fm10k net: rework setup_tc ndo op to consume general tc operand 2016-02-17 09:47:35 -05:00
i40e i40e/i40evf: use pages correctly in Rx 2016-02-17 15:22:22 -08:00
i40evf i40e/i40evf: use pages correctly in Rx 2016-02-17 15:22:22 -08:00
igb igb: Add workaround for VLAN tag stripping on 82576 2016-02-15 16:52:33 -08:00
igbvf igb/igbvf: don't give up 2016-02-15 16:17:57 -08:00
ixgb drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
ixgbe net: ixgbe: abort with cls u32 divisor groups greater than 1 2016-02-17 09:47:37 -05:00
ixgbevf ixgbevf: minor cleanups for ixgbevf_set_itr() 2015-12-29 19:16:05 -08:00
e100.c e100: Release skb when DMA mapping is failed in e100_xmit_prepare 2015-08-18 14:06:05 -07:00
Kconfig i40e: Kernel dependency update for i40e to support geneve offload 2015-12-16 10:58:56 -05:00
Makefile