Dear Martyna,

Thank you for your patch.

Am 20.02.25 um 16:04 schrieb Martyna Szapar-Mudlaw:
Fix an issue when firmware logging stops after devlink reload action
driver_reinit or driver reset. Fix it by restoring fw logging when

Maybe elaborate, why/how driver reinit or reset disables fwlog.

it was previously registered before these events.

I’d add a blank line between paragraphs.

Restoring fw logging in these cases was faultily removed with new
debugfs fw logging implementation.
Failure to init fw logging is not a critical error so it is safely
ignored.

How can this be tested?

Fixes: 73671c3162c8 ("ice: enable FW logging")
Reviewed-by: Przemek Kitszel <przemyslaw.kits...@intel.com>
Signed-off-by: Martyna Szapar-Mudlaw <martyna.szapar-mud...@linux.intel.com>
---
  drivers/net/ethernet/intel/ice/ice_main.c | 14 ++++++++++++++
  1 file changed, 14 insertions(+)

diff --git a/drivers/net/ethernet/intel/ice/ice_main.c 
b/drivers/net/ethernet/intel/ice/ice_main.c
index a03e1819e6d5..6d6873003bcb 100644
--- a/drivers/net/ethernet/intel/ice/ice_main.c
+++ b/drivers/net/ethernet/intel/ice/ice_main.c
@@ -5151,6 +5151,13 @@ int ice_load(struct ice_pf *pf)
devl_assert_locked(priv_to_devlink(pf)); + if (pf->hw.fwlog_cfg.options & ICE_FWLOG_OPTION_IS_REGISTERED) {
+               err = ice_fwlog_register(&pf->hw);
+               if (err)
+                       pf->hw.fwlog_cfg.options &=
+                               ~ICE_FWLOG_OPTION_IS_REGISTERED;

Should an error be logged in the failure case?

+       }
+
        vsi = ice_get_main_vsi(pf);
/* init channel list */
@@ -7701,6 +7708,13 @@ static void ice_rebuild(struct ice_pf *pf, enum 
ice_reset_req reset_type)
                goto err_init_ctrlq;
        }
+ if (hw->fwlog_cfg.options & ICE_FWLOG_OPTION_IS_REGISTERED) {
+               err = ice_fwlog_register(hw);
+               if (err)
+                       hw->fwlog_cfg.options &=
+                               ~ICE_FWLOG_OPTION_IS_REGISTERED;
+       }

Ditto.

+
        /* if DDP was previously loaded successfully */
        if (!ice_is_safe_mode(pf)) {
                /* reload the SW DB of filter tables */


Kind regards,

Paul

Reply via email to