diff mbox series

[iwl-net,v1] ice: Fix safe mode when DDP is missing

Message ID 20231003111745.77267-1-jan.sokolowski@intel.com
State Accepted
Delegated to: Anthony Nguyen
Headers show
Series [iwl-net,v1] ice: Fix safe mode when DDP is missing | expand

Commit Message

Jan Sokolowski Oct. 3, 2023, 11:17 a.m. UTC
From: Mateusz Pacuszka <mateuszx.pacuszka@intel.com>

One thing is broken in the safe mode, that is
ice_deinit_features() is being executed even
that ice_init_features() was not causing stack
trace during pci_unregister_driver().

Add check on the top of the function.

Fixes: 5b246e533d01 ("ice: split probe into smaller functions")
Signed-off-by: Mateusz Pacuszka <mateuszx.pacuszka@intel.com>
Signed-off-by: Jan Sokolowski <jan.sokolowski@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_main.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Przemek Kitszel Oct. 3, 2023, 11:32 a.m. UTC | #1
On 10/3/23 13:17, Jan Sokolowski wrote:
> From: Mateusz Pacuszka <mateuszx.pacuszka@intel.com>
> 
> One thing is broken in the safe mode, that is
> ice_deinit_features() is being executed even
> that ice_init_features() was not causing stack
> trace during pci_unregister_driver().
> 
> Add check on the top of the function.
> 
> Fixes: 5b246e533d01 ("ice: split probe into smaller functions")
> Signed-off-by: Mateusz Pacuszka <mateuszx.pacuszka@intel.com>
> Signed-off-by: Jan Sokolowski <jan.sokolowski@intel.com>
> ---
>   drivers/net/ethernet/intel/ice/ice_main.c | 3 +++
>   1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/net/ethernet/intel/ice/ice_main.c b/drivers/net/ethernet/intel/ice/ice_main.c
> index c8286adae946..ded0d807c5c5 100644
> --- a/drivers/net/ethernet/intel/ice/ice_main.c
> +++ b/drivers/net/ethernet/intel/ice/ice_main.c
> @@ -4683,6 +4683,9 @@ static void ice_init_features(struct ice_pf *pf)
>   
>   static void ice_deinit_features(struct ice_pf *pf)
>   {
> +	if (ice_is_safe_mode(pf))
> +		return;
> +
>   	ice_deinit_lag(pf);
>   	if (test_bit(ICE_FLAG_DCB_CAPABLE, pf->flags))
>   		ice_cfg_lldp_mib_change(&pf->hw, false);

Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>


Please be reminded that for Intel originated patches the current default 
flow is:
you iterate on e1000 ml until reviewed-by is provided;
then post to IWL + CC netdev;
Pucha, HimasekharX Reddy Oct. 9, 2023, 4:21 a.m. UTC | #2
> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-bounces@osuosl.org> On Behalf Of Jan Sokolowski
> Sent: Tuesday, October 3, 2023 4:48 PM
> To: intel-wired-lan@lists.osuosl.org
> Cc: Pacuszka, MateuszX <mateuszx.pacuszka@intel.com>; Sokolowski, Jan <jan.sokolowski@intel.com>
> Subject: [Intel-wired-lan] [PATCH iwl-net v1] ice: Fix safe mode when DDP is missing
>
> From: Mateusz Pacuszka <mateuszx.pacuszka@intel.com>
>
> One thing is broken in the safe mode, that is
> ice_deinit_features() is being executed even
> that ice_init_features() was not causing stack
> trace during pci_unregister_driver().
>
> Add check on the top of the function.
>
> Fixes: 5b246e533d01 ("ice: split probe into smaller functions")
> Signed-off-by: Mateusz Pacuszka <mateuszx.pacuszka@intel.com>
> Signed-off-by: Jan Sokolowski <jan.sokolowski@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_main.c | 3 +++
>  1 file changed, 3 insertions(+)
>

Tested-by: Pucha Himasekhar Reddy <himasekharx.reddy.pucha@intel.com> (A Contingent worker at Intel)
diff mbox series

Patch

diff --git a/drivers/net/ethernet/intel/ice/ice_main.c b/drivers/net/ethernet/intel/ice/ice_main.c
index c8286adae946..ded0d807c5c5 100644
--- a/drivers/net/ethernet/intel/ice/ice_main.c
+++ b/drivers/net/ethernet/intel/ice/ice_main.c
@@ -4683,6 +4683,9 @@  static void ice_init_features(struct ice_pf *pf)
 
 static void ice_deinit_features(struct ice_pf *pf)
 {
+	if (ice_is_safe_mode(pf))
+		return;
+
 	ice_deinit_lag(pf);
 	if (test_bit(ICE_FLAG_DCB_CAPABLE, pf->flags))
 		ice_cfg_lldp_mib_change(&pf->hw, false);