bianbu-linux-6.6/drivers/net/ethernet/intel/i40evf
Jacob Keller 6dba41cd02 i40evf: update ethtool stats code and use helper functions
Fix a bug in the way we handled VF queues, by always showing stats for
the maximum number of queues, even if they aren't allocated. It is not
safe to change the number of strings reported to ethtool, as grabbing
statistics occurs over multiple ethtool ops for which the rtnl_lock()
cannot be held the entire time.

Avoid this by always reporting queue stats for the maximum number of
queues in the netdevice. Share some of the helper functionality for
adding stats with the PF code in i40e_ethtool_stats.h

This should reduce the chance of potential future bugs, and make adding
new statistics easier.

Note for the queue stats, unlike the PF driver we do not keep an array
of queue pointers, but an array of queues, so care must be taken to
avoid accessing queue memory that hasn't yet been allocated.

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>
2018-08-30 13:53:03 -07:00
..
i40e_adminq.c i40e: Add additional return code to i40e_asq_send_command 2018-08-07 12:20:38 -07:00
i40e_adminq.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
i40e_adminq_cmd.h i40e: Add AQ command for rearrange NVM structure 2018-08-07 12:20:45 -07:00
i40e_alloc.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
i40e_common.c i40e/i40evf: remove redundant functions i40evf_aq_{set/get}_phy_register 2018-08-07 08:19:08 -07:00
i40e_devids.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
i40e_ethtool_stats.h i40evf: update ethtool stats code and use helper functions 2018-08-30 13:53:03 -07:00
i40e_hmc.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
i40e_lan_hmc.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
i40e_osdep.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
i40e_prototype.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
i40e_register.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
i40e_status.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
i40e_trace.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
i40e_txrx.c i40e/i40evf: cleanup incorrect function doxygen comments 2018-04-30 09:09:04 -07:00
i40e_txrx.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
i40e_type.h i40e: fix reading LLDP configuration 2018-04-30 09:12:33 -07:00
i40evf.h i40evf: remove MAX_QUEUES and just use I40EVF_MAX_REQ_QUEUES 2018-05-14 07:05:16 -07:00
i40evf_client.c i40e/i40evf: cleanup incorrect function doxygen comments 2018-04-30 09:09:04 -07:00
i40evf_client.h i40evf: Fix client header define 2018-05-14 07:05:16 -07:00
i40evf_ethtool.c i40evf: update ethtool stats code and use helper functions 2018-08-30 13:53:03 -07:00
i40evf_main.c net: sched: pass extack pointer to block binds and cb registration 2018-06-26 23:21:32 +09:00
i40evf_virtchnl.c i40e/i40evf: cleanup incorrect function doxygen comments 2018-04-30 09:09:04 -07:00
Makefile net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00