linux/drivers/net/ethernet/intel/i40e
Ahmed Zaki fb6e30a725 net: ethtool: pass a pointer to parameters to get/set_rxfh ethtool ops
The get/set_rxfh ethtool ops currently takes the rxfh (RSS) parameters
as direct function arguments. This will force us to change the API (and
all drivers' functions) every time some new parameters are added.

This is part 1/2 of the fix, as suggested in [1]:

- First simplify the code by always providing a pointer to all params
   (indir, key and func); the fact that some of them may be NULL seems
   like a weird historic thing or a premature optimization.
   It will simplify the drivers if all pointers are always present.

 - Then make the functions take a dev pointer, and a pointer to a
   single struct wrapping all arguments. The set_* should also take
   an extack.

Link: https://lore.kernel.org/netdev/20231121152906.2dd5f487@kernel.org/ [1]
Suggested-by: Jakub Kicinski <kuba@kernel.org>
Suggested-by: Jacob Keller <jacob.e.keller@intel.com>
Signed-off-by: Ahmed Zaki <ahmed.zaki@intel.com>
Link: https://lore.kernel.org/r/20231213003321.605376-2-ahmed.zaki@intel.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2023-12-13 22:07:16 -08:00
..
i40e.h i40e: Delete unused and useless i40e_pf fields 2023-11-27 09:18:42 -08:00
i40e_adminq.c i40e: Remove queue tracking fields from i40e_adminq_ring 2023-11-27 09:31:34 -08:00
i40e_adminq.h i40e: Remove queue tracking fields from i40e_adminq_ring 2023-11-27 09:31:34 -08:00
i40e_adminq_cmd.h i40e: Remove circular header dependencies and fix headers 2023-10-05 09:18:09 -07:00
i40e_alloc.h i40e: Move memory allocation structures to i40e_alloc.h 2023-10-05 09:13:42 -07:00
i40e_client.c i40e: Remove circular header dependencies and fix headers 2023-10-05 09:18:09 -07:00
i40e_common.c i40e: Remove queue tracking fields from i40e_adminq_ring 2023-11-27 09:31:34 -08:00
i40e_dcb.c i40e: Use helpers to check running FW and AQ API versions 2023-11-14 20:05:44 -08:00
i40e_dcb.h
i40e_dcb_nl.c i40e: Delete unused i40e_mac_info fields 2023-11-14 20:05:45 -08:00
i40e_ddp.c i40e: use scnprintf over strncpy+strncat 2023-10-18 18:10:17 -07:00
i40e_debug.h i40e: Initialize hardware capabilities at single place 2023-11-14 20:05:44 -08:00
i40e_debugfs.c i40e: Delete unused and useless i40e_pf fields 2023-11-27 09:18:42 -08:00
i40e_devids.h
i40e_devlink.c i40e: Do not call devlink_port_type_clear() 2023-11-06 16:16:13 -08:00
i40e_devlink.h i40e: Add initial devlink support 2023-10-15 14:33:41 +01:00
i40e_diag.c
i40e_diag.h i40e: Remove circular header dependencies and fix headers 2023-10-05 09:18:09 -07:00
i40e_ethtool.c net: ethtool: pass a pointer to parameters to get/set_rxfh ethtool ops 2023-12-13 22:07:16 -08:00
i40e_hmc.c i40e: Remove circular header dependencies and fix headers 2023-10-05 09:18:09 -07:00
i40e_hmc.h i40e: Remove circular header dependencies and fix headers 2023-10-05 09:18:09 -07:00
i40e_io.h i40e: Split i40e_osdep.h 2023-10-05 09:13:43 -07:00
i40e_lan_hmc.c i40e: Remove circular header dependencies and fix headers 2023-10-05 09:18:09 -07:00
i40e_lan_hmc.h i40e: Remove circular header dependencies and fix headers 2023-10-05 09:18:09 -07:00
i40e_main.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2023-12-07 17:53:17 -08:00
i40e_nvm.c i40e: Use DECLARE_BITMAP for flags field in i40e_hw 2023-11-14 20:05:44 -08:00
i40e_prototype.h i40e: Move inline helpers to i40e_prototype.h 2023-11-14 20:05:45 -08:00
i40e_ptp.c i40e: Consolidate hardware capabilities 2023-11-14 20:05:44 -08:00
i40e_register.h i40e: Remove AQ register definitions for VF types 2023-11-27 09:27:27 -08:00
i40e_trace.h
i40e_txrx.c i40e: Use DECLARE_BITMAP for flags and hw_features fields in i40e_pf 2023-11-14 20:05:43 -08:00
i40e_txrx.h i40e: Consolidate hardware capabilities 2023-11-14 20:05:44 -08:00
i40e_txrx_common.h i40e: Remove circular header dependencies and fix headers 2023-10-05 09:18:09 -07:00
i40e_type.h i40e: Delete unused i40e_mac_info fields 2023-11-14 20:05:45 -08:00
i40e_virtchnl_pf.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2023-11-23 12:20:58 -08:00
i40e_virtchnl_pf.h i40e: Remove circular header dependencies and fix headers 2023-10-05 09:18:09 -07:00
i40e_xsk.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2023-10-26 13:46:28 -07:00
i40e_xsk.h i40e: Remove circular header dependencies and fix headers 2023-10-05 09:18:09 -07:00
Makefile i40e: Add initial devlink support 2023-10-15 14:33:41 +01:00