linux/drivers/net/ethernet/intel/ice
Brett Creeley 8244dd2d23 ice: Audit hotpath structures with pahole
Currently the ice_q_vector structure and ice_ring_container structure
are taking up more space than necessary due to cache alignment holes
and unnecessary variables respectively. This is not helping the
driver's performance. The following fixes were done to improve cache
alignment, reduce wasted space, and increase performance.

1. Remove the ice_latency_range enum as it is unused.
2. Remove the latency_range variable in the ice_ring_container structure.
3. Change the size of the itr_idx in the ice_ring_container structure
   from an int to an u16. This reduced the size of ice_ring_container
   structure to 32 Bytes so it has no holes or padding.
4. Re-arrange the ice_q_vector structure using pahole to align
   members as best as possible in regards to 64 Byte cache line size.

Signed-off-by: Brett Creeley <brett.creeley@intel.com>
Signed-off-by: Anirudh Venkataramanan <anirudh.venkataramanan@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2019-03-26 15:03:25 -07:00
..
ice.h ice: Audit hotpath structures with pahole 2019-03-26 15:03:25 -07:00
ice_adminq_cmd.h ice : Ensure only valid bits are set in ice_aq_set_phy_cfg 2019-03-19 16:52:47 -07:00
ice_common.c ice: Create a generic name for the ice_rx_flg64_bits structure 2019-03-25 10:40:04 -07:00
ice_common.h ice: Enable link events over the ARQ 2019-03-25 07:54:44 -07:00
ice_controlq.c ice: Use Tx|Rx in comments 2018-11-20 11:39:04 -08:00
ice_controlq.h ice: Update expected FW version 2018-10-24 13:56:37 -07:00
ice_devids.h ice: Change device ID define names to align with branding string 2018-10-24 13:53:30 -07:00
ice_ethtool.c ice: fix some function prototype and signature style issues 2019-03-22 08:19:17 -07:00
ice_hw_autogen.h ice: enable VF admin queue interrupts 2019-03-26 14:07:46 -07:00
ice_lan_tx_rx.h ice: Create a generic name for the ice_rx_flg64_bits structure 2019-03-25 10:40:04 -07:00
ice_lib.c ice: Audit hotpath structures with pahole 2019-03-26 15:03:25 -07:00
ice_lib.h ice: Add support for PF/VF promiscuous mode 2019-03-22 08:19:17 -07:00
ice_main.c ice: Do not bail out when filter already exists 2019-03-26 14:51:59 -07:00
ice_nvm.c ice: fix numeric overflow warning 2019-02-25 08:56:01 -08:00
ice_osdep.h ice: Start hardware initialization 2018-03-26 09:59:08 -07:00
ice_sched.c ice: add and use new ice_for_each_traffic_class() macro 2019-03-25 10:33:54 -07:00
ice_sched.h ice: Move aggregator list into ice_hw instance 2019-01-15 11:21:13 -08:00
ice_sriov.c ice: Add support for new PHY types 2019-01-15 12:38:44 -08:00
ice_sriov.h ice: Add handlers for VF netdevice operations 2018-10-03 07:42:30 -07:00
ice_status.h ice: check for a leaf node presence 2019-02-25 08:56:01 -08:00
ice_switch.c ice: Set LAN_EN for all directional rules 2019-03-22 08:20:05 -07:00
ice_switch.h ice: Add support for PF/VF promiscuous mode 2019-03-22 08:19:17 -07:00
ice_txrx.c ice: Audit hotpath structures with pahole 2019-03-26 15:03:25 -07:00
ice_txrx.h ice: Audit hotpath structures with pahole 2019-03-26 15:03:25 -07:00
ice_type.h ice: add and use new ice_for_each_traffic_class() macro 2019-03-25 10:33:54 -07:00
ice_virtchnl_pf.c ice: Fix issue with VF attempt to delete default MAC address 2019-03-26 14:49:59 -07:00
ice_virtchnl_pf.h ice: fix some function prototype and signature style issues 2019-03-22 08:19:17 -07:00
Makefile ice: Add support for VF reset events 2018-10-03 07:42:30 -07:00