1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/drivers/net/ethernet/intel/ice
Wojciech Drewek 41cc4e5393 ice: Remove and readd netdev during devlink reload
Recent changes to the devlink reload (commit 9b2348e2d6
("devlink: warn about existing entities during reload-reinit"))
force the drivers to destroy devlink ports during reinit.
Adjust ice driver to this requirement, unregister netdvice, destroy
devlink port. ice_init_eth() was removed and all the common code
between probe and reload was moved to ice_load().

During devlink reload we can't take devl_lock (it's already taken)
and in ice_probe() we have to lock it. Use devl_* variant of the API
which does not acquire and release devl_lock. Guard ice_load()
with devl_lock only in case of probe.

Suggested-by: Jiri Pirko <jiri@nvidia.com>
Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Brett Creeley <brett.creeley@amd.com>
Signed-off-by: Wojciech Drewek <wojciech.drewek@intel.com>
Tested-by: Pucha Himasekhar Reddy <himasekharx.reddy.pucha@intel.com> (A Contingent worker at Intel)
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
2024-02-12 10:11:53 -08:00
..
ice.h ice: Remove and readd netdev during devlink reload 2024-02-12 10:11:53 -08:00
ice_adminq_cmd.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2024-01-04 18:06:46 -08:00
ice_arfs.c ice: add individual interrupt allocation 2023-05-16 09:38:38 -07:00
ice_arfs.h ice: remove circular header dependencies on ice.h 2022-03-14 17:22:58 -07:00
ice_base.c ice: make ice_vsi_cfg_txq() static 2024-02-02 09:13:13 -08:00
ice_base.h ice: make ice_vsi_cfg_txq() static 2024-02-02 09:13:13 -08:00
ice_cgu_regs.h ice: ensure the hardware Clock Generation Unit is configured 2021-12-21 09:11:40 -08:00
ice_common.c ice: add support for 3k signing DDP sections for E825C 2024-02-12 10:07:12 -08:00
ice_common.h ice: Add helper function ice_is_generic_mac 2024-02-12 10:06:18 -08:00
ice_controlq.c ice: Add helper function ice_is_generic_mac 2024-02-12 10:06:18 -08:00
ice_controlq.h ice: reduce initial wait for control queue messages 2023-06-22 10:23:44 -07:00
ice_dcb.c ice: cleanup inconsistent code 2023-12-18 11:20:43 -08:00
ice_dcb.h ice: Handle LLDP MIB Pending change 2023-01-19 08:18:03 -08:00
ice_dcb_lib.c ice: field prep conversion 2023-12-18 11:20:26 -08:00
ice_dcb_lib.h ice: Prevent set_channel from changing queues while RDMA active 2023-01-27 11:32:18 -08:00
ice_dcb_nl.c ice: field get conversion 2023-12-18 11:20:43 -08:00
ice_dcb_nl.h ice: use static inline for dummy functions 2021-06-07 08:59:01 -07:00
ice_ddp.c ice: add support for 3k signing DDP sections for E825C 2024-02-12 10:07:12 -08:00
ice_ddp.h ice: Add support for E830 DDP package segment 2023-10-26 20:32:39 -07:00
ice_debugfs.c ice: remove incorrect comment 2024-02-02 09:13:13 -08:00
ice_devids.h ice: introduce new E825C devices family 2024-02-12 09:57:06 -08:00
ice_devlink.c ice: Remove and readd netdev during devlink reload 2024-02-12 10:11:53 -08:00
ice_devlink.h ice: set Tx topology every time new repr is added 2023-11-13 11:42:14 -08:00
ice_dpll.c dpll: extend lock_status_get() op by status error and expose to user 2024-02-01 15:39:44 +01:00
ice_dpll.h ice: dpll: fix check for dpll input priority range 2023-11-13 10:02:15 -08:00
ice_eswitch.c ice: field prep conversion 2023-12-18 11:20:26 -08:00
ice_eswitch.h ice: reserve number of CP queues 2023-11-13 11:42:15 -08:00
ice_eswitch_br.c ice: make representor code generic 2023-11-13 11:42:14 -08:00
ice_eswitch_br.h ice: implement static version of ageing 2023-07-24 08:53:42 -07:00
ice_ethtool.c ice: Add a new counter for Rx EIPE errors 2024-02-02 09:13:13 -08:00
ice_ethtool.h ice: Add 200G speed/phy type use 2023-10-26 20:32:38 -07:00
ice_ethtool_fdir.c ice: field get conversion 2023-12-18 11:20:43 -08:00
ice_fdir.c ice: field prep conversion 2023-12-18 11:20:26 -08:00
ice_fdir.h ice: Add flow director support for channel mode 2021-12-30 13:16:07 +00:00
ice_flex_pipe.c ice: field prep conversion 2023-12-18 11:20:26 -08:00
ice_flex_pipe.h ice: enable symmetric-xor RSS for Toeplitz hash function 2023-12-13 22:07:17 -08:00
ice_flex_type.h ice: enable symmetric-xor RSS for Toeplitz hash function 2023-12-13 22:07:17 -08:00
ice_flow.c ice: enable symmetric-xor RSS for Toeplitz hash function 2023-12-13 22:07:17 -08:00
ice_flow.h ice: enable symmetric-xor RSS for Toeplitz hash function 2023-12-13 22:07:17 -08:00
ice_fltr.c ice: sync netdev filters after clearing VSI 2023-02-03 09:54:18 -08:00
ice_fltr.h ice: Introduce ice_vlan struct 2022-02-09 09:24:45 -08:00
ice_fw_update.c ice: split ice_aq_wait_for_event() func into two 2023-08-17 13:59:46 -07:00
ice_fw_update.h ice: support immediate firmware activation via devlink reload 2021-12-15 08:40:38 -08:00
ice_fwlog.c ice: add ability to read and configure FW log data 2023-12-14 09:50:58 -08:00
ice_fwlog.h ice: add ability to read and configure FW log data 2023-12-14 09:50:58 -08:00
ice_gnss.c ice: check netlist before enabling ICE_F_GNSS 2023-09-18 11:27:33 -07:00
ice_gnss.h ice: make writes to /dev/gnssX synchronous 2023-06-07 10:51:58 +01:00
ice_hw_autogen.h ice: Enable SW interrupt from FW for LL TS 2024-01-02 11:18:32 -08:00
ice_hwmon.c ice: read internal temperature sensor 2023-12-05 11:40:12 +01:00
ice_hwmon.h ice: read internal temperature sensor 2023-12-05 11:40:12 +01:00
ice_idc.c ice: add dynamic interrupt allocation 2023-05-16 09:38:38 -07:00
ice_idc_int.h ice: remove circular header dependencies on ice.h 2022-03-14 17:22:58 -07:00
ice_irq.c ice: add dynamic interrupt allocation 2023-05-16 09:38:38 -07:00
ice_irq.h ice: add dynamic interrupt allocation 2023-05-16 09:38:38 -07:00
ice_lag.c Merge branch '1GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue 2023-12-22 12:09:52 +00:00
ice_lag.h ice: Fix VF Reset paths when interface in a failed over aggregate 2023-11-29 19:55:49 -08:00
ice_lan_tx_rx.h ice: Support RX hash XDP hint 2023-12-13 16:16:40 -08:00
ice_lib.c ice: make ice_vsi_cfg_txq() static 2024-02-02 09:13:13 -08:00
ice_lib.h ice: make ice_vsi_cfg_txq() static 2024-02-02 09:13:13 -08:00
ice_main.c ice: Remove and readd netdev during devlink reload 2024-02-12 10:11:53 -08:00
ice_nvm.c ice: field get conversion 2023-12-18 11:20:43 -08:00
ice_nvm.h ice: Add additional flags to ice_nvm_write_activate 2022-08-24 08:45:54 -07:00
ice_osdep.h net: intel: fix old compiler regressions 2024-02-07 09:15:27 -08:00
ice_pf_vsi_vlan_ops.c ice: Support configuring the device to Double VLAN Mode 2022-02-09 09:24:45 -08:00
ice_pf_vsi_vlan_ops.h ice: Add outer_vlan_ops and VSI specific VLAN ops implementations 2022-02-09 09:24:45 -08:00
ice_protocol_type.h ice: Rename enum ice_pkt_flags values 2023-08-07 13:01:29 -07:00
ice_ptp.c ice: stop destroying and reinitalizing Tx tracker during reset 2024-01-30 11:49:04 +01:00
ice_ptp.h ice: factor out ice_ptp_rebuild_owner() 2024-01-30 11:49:04 +01:00
ice_ptp_consts.h ice: Rename E822 to E82X 2023-12-05 11:40:12 +01:00
ice_ptp_hw.c ice: Rename E822 to E82X 2023-12-05 11:40:12 +01:00
ice_ptp_hw.h ice: Enable SW interrupt from FW for LL TS 2024-01-02 11:18:32 -08:00
ice_repr.c ice: add VF representors one by one 2023-11-13 11:42:14 -08:00
ice_repr.h ice: add VF representors one by one 2023-11-13 11:42:14 -08:00
ice_sbq_cmd.h ice: add support for sideband messages 2021-06-11 07:38:00 -07:00
ice_sched.c ice: field get conversion 2023-12-18 11:20:43 -08:00
ice_sched.h ice: drop two params of ice_aq_move_sched_elems() 2023-10-03 12:17:11 -07:00
ice_sriov.c ice: replace ice_vf_recreate_vsi() with ice_vf_reconfig_vsi() 2024-01-02 11:18:32 -08:00
ice_sriov.h ice: set MSI-X vector count on VF 2023-10-20 12:53:05 +01:00
ice_switch.c ice: Add support for packet mirroring using hardware in switchdev mode 2024-01-02 11:18:32 -08:00
ice_switch.h ice: remove unused methods 2023-08-17 10:43:06 -07:00
ice_tc_lib.c ice: Add support for packet mirroring using hardware in switchdev mode 2024-01-02 11:18:32 -08:00
ice_tc_lib.h ice: Fix tx queue rate limit when TCs are configured 2023-07-05 09:29:37 -07:00
ice_trace.h ice: add tracepoints for the switchdev bridge 2023-07-24 08:53:49 -07:00
ice_txrx.c ice: remove redundant xdp_rxq_info registration 2024-01-24 16:24:06 -08:00
ice_txrx.h ice: work on pre-XDP prog frag count 2024-01-24 16:24:06 -08:00
ice_txrx_lib.c ice: Add a new counter for Rx EIPE errors 2024-02-02 09:13:13 -08:00
ice_txrx_lib.h ice: work on pre-XDP prog frag count 2024-01-24 16:24:06 -08:00
ice_type.h ice: Add helper function ice_is_generic_mac 2024-02-12 10:06:18 -08:00
ice_vf_lib.c ice: replace ice_vf_recreate_vsi() with ice_vf_reconfig_vsi() 2024-01-02 11:18:32 -08:00
ice_vf_lib.h ice: replace ice_vf_recreate_vsi() with ice_vf_reconfig_vsi() 2024-01-02 11:18:32 -08:00
ice_vf_lib_private.h ice: replace ice_vf_recreate_vsi() with ice_vf_reconfig_vsi() 2024-01-02 11:18:32 -08:00
ice_vf_mbx.c ice: merge ice_mbx_report_malvf with ice_mbx_vf_state_handler 2023-03-13 11:00:10 -07:00
ice_vf_mbx.h ice: initialize mailbox snapshot earlier in PF init 2023-03-13 11:06:05 -07:00
ice_vf_vsi_vlan_ops.c ice: Restore fix disabling RX VLAN filtering 2023-12-05 10:51:22 -08:00
ice_vf_vsi_vlan_ops.h ice: implement bridge port vlan 2023-07-24 08:53:35 -07:00
ice_virtchnl.c ice: field get conversion 2023-12-18 11:20:43 -08:00
ice_virtchnl.h iavf: enable symmetric-xor RSS for Toeplitz hash function 2023-12-13 22:07:17 -08:00
ice_virtchnl_allowlist.c iavf: enable symmetric-xor RSS for Toeplitz hash function 2023-12-13 22:07:17 -08:00
ice_virtchnl_allowlist.h ice: Allow ignoring opcodes on specific VF 2021-04-22 09:26:22 -07:00
ice_virtchnl_fdir.c ice: field get conversion 2023-12-18 11:20:43 -08:00
ice_virtchnl_fdir.h ice: introduce ice_vf_lib.c, ice_vf_lib.h, and ice_vf_lib_private.h 2022-03-15 13:22:13 -07:00
ice_vlan.h ice: Use the proto argument for VLAN ops 2022-02-09 09:24:45 -08:00
ice_vlan_mode.c ice: define meta data to match in switch 2023-05-19 08:57:43 -07:00
ice_vlan_mode.h ice: Support configuring the device to Double VLAN Mode 2022-02-09 09:24:45 -08:00
ice_vsi_vlan_lib.c ice: fix pre-shifted bit usage 2023-12-18 11:20:43 -08:00
ice_vsi_vlan_lib.h ice: implement bridge port vlan 2023-07-24 08:53:35 -07:00
ice_vsi_vlan_ops.c ice: Add outer_vlan_ops and VSI specific VLAN ops implementations 2022-02-09 09:24:45 -08:00
ice_vsi_vlan_ops.h ice: implement bridge port vlan 2023-07-24 08:53:35 -07:00
ice_xsk.c ice: make ice_vsi_cfg_txq() static 2024-02-02 09:13:13 -08:00
ice_xsk.h ice: xsk: change batched Tx descriptor cleaning 2022-09-27 08:11:02 -07:00
Makefile ice: configure FW logging 2023-12-14 09:50:48 -08:00