mirror_ubuntu-kernels/drivers/net/ethernet
Alexander Duyck 1793668c3b i40e/i40evf: Update code to better handle incrementing page count
Update the driver code so that we do bulk updates of the page reference
count instead of just incrementing it by one reference at a time.  The
advantage to doing this is that we cut down on atomic operations and
this in turn should give us a slight improvement in cycles per packet.
In addition if we eventually move this over to using build_skb the gains
will be more noticeable.

I also found and fixed a store forwarding stall from where we were
assigning "*new_buff = *old_buff".  By breaking it up into individual
copies we can avoid this and as a result the performance is slightly
improved.

Change-ID: I1d3880dece4133eca3c32423b04a5467321ccc52
Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2017-03-27 16:45:13 -07:00
..
3com drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
8390
adaptec net: adaptec: starfire: add checks for dma mapping errors 2017-01-29 19:04:11 -05:00
adi net: bfin_mac: Remove unused stats member from struct bfin_mac_local 2017-03-27 16:01:59 -07:00
aeroflex net: greth: Utilize of_get_mac_address() 2017-03-22 12:00:39 -07:00
agere drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
alacritech
allwinner
alteon
altera drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
amazon net: ena: remove superfluous check in ena_remove() 2017-02-20 10:22:59 -05:00
amd Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-03-23 16:41:27 -07:00
apm drivers: net: xgene-v2: misc fixes 2017-03-22 19:17:14 -07:00
apple
aquantia net:ethernet:aquantia: Fix for RX checksum offload. 2017-03-22 19:40:52 -07:00
arc drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
atheros atl1e: add GRO support 2017-02-03 11:13:17 -05:00
aurora
broadcom net: systemport: Simplify circular pointer arithmetic 2017-03-24 12:53:15 -07:00
brocade bna: integer overflow bug in debugfs 2017-03-21 17:43:16 -07:00
cadence lib/vsprintf.c: remove %Z support 2017-02-27 18:43:47 -08:00
calxeda drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
cavium liquidio: do not reset Octeon if NIC firmware was preloaded 2017-03-24 13:20:43 -07:00
chelsio cxgb4: Update IngPad and IngPack values 2017-03-22 10:53:49 -07:00
cirrus ep93xx_eth: add GRO support 2017-02-05 16:11:57 -05:00
cisco enic: add vxlan offload on tx path 2017-02-09 17:24:29 -05:00
davicom
dec drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
dlink
emulex be2net: get rid of custom busy poll code 2017-02-03 16:06:55 -05:00
ezchip drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
faraday drivers: net: ethernet: remove incorrect __exit markups 2017-03-02 14:33:49 -08:00
freescale net: ethernet: fs_enet: Remove useless includes 2017-03-16 11:15:15 -07:00
fujitsu
hisilicon net: hip04: Omit private ndo_get_stats function 2017-02-14 15:03:21 -05:00
hp
i825xx
ibm net: ibmvnic: Remove unused net_stats member from struct ibmvnic_adapter 2017-03-27 16:02:00 -07:00
intel i40e/i40evf: Update code to better handle incrementing page count 2017-03-27 16:45:13 -07:00
marvell net: mvneta: support suspend and resume 2017-03-16 10:20:38 -07:00
mediatek net: mediatek: Use eth_hw_addr_random() 2017-03-09 13:16:34 -08:00
mellanox mlxsw: spectrum_kvdl: Cosmetic kvdl allocator API change 2017-03-25 19:56:15 -07:00
micrel net: ks8851: Added support for half-duplex SPI 2017-03-09 18:18:37 -08:00
microchip net: microchip: encx24j600: use new api ethtool_{get|set}_link_ksettings 2017-02-12 22:32:17 -05:00
moxa drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
myricom net: myricom: myri10ge: use new api ethtool_{get|set}_link_ksettings 2017-02-12 22:32:17 -05:00
natsemi net: natsemi: ns83820: use new api ethtool_{get|set}_link_ksettings 2017-02-12 22:32:17 -05:00
neterion net: s2io: fix typo argumnet argument 2017-02-26 11:57:58 -05:00
netronome nfp: disable FW on reconfiguration errors 2017-03-22 12:59:09 -07:00
nuvoton net: nuvoton: w90p910: use new api ethtool_{get|set}_link_ksettings 2017-02-12 22:32:17 -05:00
nvidia forcedeth: Remove return from a void function 2017-02-23 10:55:07 -05:00
nxp drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
oki-semi net: oki-semi: pch_gbe: use new api ethtool_{get|set}_link_ksettings 2017-02-17 12:00:14 -05:00
packetengines net: hamachi: use new api ethtool_{get|set}_link_ksettings 2017-02-17 14:06:41 -05:00
pasemi drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
qlogic qed: Reserve VF feature before PF 2017-03-23 11:53:30 -07:00
qualcomm net: qcom/emac: optimize QDF2400 SGMII RX/TX impedence values 2017-03-07 12:29:37 -08:00
rdc
realtek r8169: replace init_timer with setup_timer 2017-03-12 23:55:03 -07:00
renesas sh_eth: fix wakeup event reporting from MagicPacket 2017-02-01 12:53:59 -05:00
rocker ipv4: fib_rules: Dump FIB rules when registering FIB notifier 2017-03-16 10:18:34 -07:00
samsung drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
seeq drivers: net: ethernet: remove incorrect __exit markups 2017-03-02 14:33:49 -08:00
sfc Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-03-23 16:41:27 -07:00
sgi net: sgi: ioc3-eth: use new api ethtool_{get|set}_link_ksettings 2017-03-06 17:05:39 -08:00
silan net: silan: sc92031: use new api ethtool_{get|set}_link_ksettings 2017-03-06 17:05:39 -08:00
sis net: sis: sis900: use new api ethtool_{get|set}_link_ksettings 2017-03-06 17:05:39 -08:00
smsc net: smsc: smc91x: use new api ethtool_{get|set}_link_ksettings 2017-03-08 22:18:05 -08:00
stmicro net: stmmac: add set_mac to the stmmac_ops 2017-03-24 12:36:42 -07:00
sun net: sun: sungem: rix a possible null dereference 2017-03-21 17:44:46 -07:00
synopsys net: dwc-xlgmac: use dual license 2017-03-23 17:04:14 -07:00
tehuti net: tehuti: use new api ethtool_{get|set}_link_ksettings 2017-03-27 16:00:07 -07:00
ti Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-03-23 16:41:27 -07:00
tile drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
toshiba net: toshiba: spider_net: use new api ethtool_{get|set}_link_ksettings 2017-03-08 22:18:05 -08:00
tundra net: tundra: tsi108: use new api ethtool_{get|set}_link_ksettings 2017-03-12 19:28:07 -07:00
via net: via: via-velocity: use new api ethtool_{get|set}_link_ksettings 2017-03-12 19:28:07 -07:00
wiznet drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
xilinx net: axienet: use eth_hw_addr_random() 2017-03-06 17:15:41 -08:00
xircom
xscale
dnet.c drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
dnet.h
ec_bhf.c
ethoc.c net: ethoc: Use ether_addr_copy() 2017-03-21 17:16:56 -07:00
fealnx.c
jme.c
jme.h
Kconfig net: dwc-xlgmac: Initial driver for DesignWare Enterprise Ethernet 2017-03-09 13:29:27 -08:00
korina.c drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
lantiq_etop.c drivers: net: generalize napi_complete_done() 2017-01-30 15:10:42 -05:00
Makefile net: dwc-xlgmac: Initial driver for DesignWare Enterprise Ethernet 2017-03-09 13:29:27 -08:00
netx-eth.c