linux/drivers/net/ethernet/intel/i40e
Jacob Keller 95bc2fb4c6 i40e/i40evf: bundle more descriptors when allocating buffers
Double the number of descriptors we'll bundle into one tail bump when
receiving. Empirical testing has shown that we reduce CPU utilization
and don't appear to reduce throughput or packet rate. 32 seems to be the
sweet spot, as it's half the default polling budget, so we'd essentially
reduce from 4 tail writes when polling down to 2. Increasing this up to
64 appears to have negative impacts as it may become possible that we
don't bump the tail each time we get polled, which could cause a long
delay between returning descriptors to the hardware.

Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2017-10-09 14:27:42 -07:00
..
i40e.h i40e/i40evf: always set the CLEARPBA flag when re-enabling interrupts 2017-10-09 14:21:26 -07:00
i40e_adminq.c i40e: Stop dropping 802.1ad tags - eth proto 0x88a8 2017-10-02 12:46:36 -07:00
i40e_adminq.h i40e: reduce wait time for adminq command completion 2017-04-19 17:38:25 -07:00
i40e_adminq_cmd.h i40e: Display error message if module does not meet thermal requirements 2017-10-06 08:11:31 -07:00
i40e_alloc.h
i40e_client.c i40e: use dev_dbg instead of dev_info when warning about missing routine 2017-06-20 18:17:10 -07:00
i40e_client.h i40e: KISS the client interface 2017-03-15 01:57:08 -07:00
i40e_common.c i40e: Stop dropping 802.1ad tags - eth proto 0x88a8 2017-10-02 12:46:36 -07:00
i40e_dcb.c i40e: Support firmware CEE DCB UP to TC map re-definition 2017-06-20 18:17:10 -07:00
i40e_dcb.h
i40e_dcb_nl.c
i40e_debugfs.c i40e/i40evf: use DECLARE_BITMAP for state 2017-10-06 08:11:31 -07:00
i40e_devids.h
i40e_diag.c
i40e_diag.h
i40e_ethtool.c i40e/i40evf: organize and re-number feature flags 2017-10-06 08:11:32 -07:00
i40e_fcoe.c networking: make skb_put & friends return void pointers 2017-06-16 11:48:39 -04:00
i40e_fcoe.h
i40e_hmc.c
i40e_hmc.h
i40e_lan_hmc.c
i40e_lan_hmc.h
i40e_main.c i40e: reduce lrxqthresh from 2 to 1 2017-10-09 14:24:46 -07:00
i40e_nvm.c Merge branch '40GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-queue 2017-09-05 20:03:40 -07:00
i40e_osdep.h i40e: Drop FCoE code from core driver files 2017-03-27 16:47:43 -07:00
i40e_prototype.h i40e: Add support for 'ethtool -m' 2017-10-02 12:46:35 -07:00
i40e_ptp.c i40e: separate hw_features from runtime changing flags 2017-08-25 14:46:15 -07:00
i40e_register.h i40e: fix incorrect register definition 2017-10-06 08:11:31 -07:00
i40e_status.h
i40e_trace.h i40e/i40evf: Add tracepoints 2017-04-19 16:47:31 -07:00
i40e_txrx.c i40e/i40evf: bump tail only in multiples of 8 2017-10-09 14:26:29 -07:00
i40e_txrx.h i40e/i40evf: bundle more descriptors when allocating buffers 2017-10-09 14:27:42 -07:00
i40e_type.h i40e: Stop dropping 802.1ad tags - eth proto 0x88a8 2017-10-02 12:46:36 -07:00
i40e_virtchnl_pf.c i40e: reduce lrxqthresh from 2 to 1 2017-10-09 14:24:46 -07:00
i40e_virtchnl_pf.h i40e: fix handling of vf_states variable 2017-10-02 12:46:35 -07:00
Makefile i40e/i40evf: Add tracepoints 2017-04-19 16:47:31 -07:00