]> git.baikalelectronics.ru Git - kernel.git/commit
i40e/i40evf: Update code to better handle incrementing page count
authorAlexander Duyck <alexander.h.duyck@intel.com>
Tue, 21 Feb 2017 23:55:39 +0000 (15:55 -0800)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Mon, 27 Mar 2017 23:45:13 +0000 (16:45 -0700)
commit6b948ed197fe4b35a2c99424846e18732ab2f182
tree8dcc358ec947b10a27f4a263c43aee5984d16df6
parent21dee97a11e9d06edd52ee072cbeae14e35e45d3
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>
drivers/net/ethernet/intel/i40e/i40e_txrx.c
drivers/net/ethernet/intel/i40e/i40e_txrx.h
drivers/net/ethernet/intel/i40evf/i40e_txrx.c
drivers/net/ethernet/intel/i40evf/i40e_txrx.h