linux_dsm_epyc7002/drivers/net/ethernet/intel/iavf
Nicholas Nunley 4eda4e0096 iavf: initialize ITRN registers with correct values
Since commit 92418fb147 ("i40e/i40evf: Use usec value instead of reg
value for ITR defines") the driver tracks the interrupt throttling
intervals in single usec units, although the actual ITRN registers are
programmed in 2 usec units. Most register programming flows in the driver
correctly handle the conversion, although it is currently not applied when
the registers are initialized to their default values. Most of the time
this doesn't present a problem since the default values are usually
immediately overwritten through the standard adaptive throttling mechanism,
or updated manually by the user, but if adaptive throttling is disabled and
the interval values are left alone then the incorrect value will persist.

Since the intended default interval of 50 usecs (vs. 100 usecs as
programmed) performs better for most traffic workloads, this can lead to
performance regressions.

This patch adds the correct conversion when writing the initial values to
the ITRN registers.

Signed-off-by: Nicholas Nunley <nicholas.d.nunley@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2019-11-08 16:10:51 -08:00
..
iavf_adminq_cmd.h iavf: replace i40e variables with iavf 2019-05-31 01:02:53 -07:00
iavf_adminq.c iavf: change remaining i40e defines to be iavf 2019-05-31 01:03:17 -07:00
iavf_adminq.h iavf: change remaining i40e defines to be iavf 2019-05-31 01:03:17 -07:00
iavf_alloc.h iavf: change iavf_status_code to iavf_status 2019-05-31 00:19:33 -07:00
iavf_client.c iavf: update comments and file checks to match iavf 2019-05-31 01:03:24 -07:00
iavf_client.h iavf: rename iavf_client.h defines to match driver name 2019-05-31 01:03:13 -07:00
iavf_common.c iavf: update comments and file checks to match iavf 2019-05-31 01:03:24 -07:00
iavf_devids.h
iavf_ethtool.c iavf: Remove timer for work triggering, use delaying work instead 2019-06-17 15:39:26 -07:00
iavf_main.c iavf: initialize ITRN registers with correct values 2019-11-08 16:10:51 -08:00
iavf_osdep.h iavf: Fix up debug print macro 2019-06-28 15:59:56 -07:00
iavf_prototype.h iavf: replace i40e variables with iavf 2019-05-31 01:02:53 -07:00
iavf_register.h
iavf_status.h iavf: rename iavf_status structure flags 2019-05-31 01:03:04 -07:00
iavf_trace.h iavf: update comments and file checks to match iavf 2019-05-31 01:03:24 -07:00
iavf_txrx.c net: Use skb_frag_off accessors 2019-07-30 14:21:32 -07:00
iavf_txrx.h net: Use skb accessors in network drivers 2019-07-22 20:47:56 -07:00
iavf_type.h iavf: change remaining i40e defines to be iavf 2019-05-31 01:03:17 -07:00
iavf_virtchnl.c iavf: fix MAC address setting for VFs when filter is rejected 2019-09-11 09:10:46 -07:00
iavf.h iavf: allow permanent MAC address to change 2019-09-09 10:08:38 -07:00
Makefile iavf: Rename i40e_adminq* files to iavf_adminq* 2019-05-31 00:15:53 -07:00