[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CO1PR11MB5089BD51EC67B855D93D26A0D6C09@CO1PR11MB5089.namprd11.prod.outlook.com>
Date: Thu, 19 Aug 2021 22:32:30 +0000
From: "Keller, Jacob E" <jacob.e.keller@...el.com>
To: "Nguyen, Anthony L" <anthony.l.nguyen@...el.com>,
"davem@...emloft.net" <davem@...emloft.net>,
"kuba@...nel.org" <kuba@...nel.org>
CC: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"Brelinski, TonyX" <tonyx.brelinski@...el.com>
Subject: RE: [PATCH net v2 1/1] ice: do not abort devlink info if board
identifier can't be found
> -----Original Message-----
> From: Nguyen, Anthony L <anthony.l.nguyen@...el.com>
> Sent: Thursday, August 19, 2021 3:35 PM
> To: davem@...emloft.net; kuba@...nel.org
> Cc: Keller, Jacob E <jacob.e.keller@...el.com>; netdev@...r.kernel.org; Nguyen,
> Anthony L <anthony.l.nguyen@...el.com>; Brelinski, TonyX
> <tonyx.brelinski@...el.com>
> Subject: [PATCH net v2 1/1] ice: do not abort devlink info if board identifier can't
> be found
>
> From: Jacob Keller <jacob.e.keller@...el.com>
>
> The devlink dev info command reports version information about the
> device and firmware running on the board. This includes the "board.id"
> field which is supposed to represent an identifier of the board design.
> The ice driver uses the Product Board Assembly identifier for this.
>
> In some cases, the PBA is not present in the NVM. If this happens,
> devlink dev info will fail with an error. Instead, modify the
> ice_info_pba function to just exit without filling in the context
> buffer. This will cause the board.id field to be skipped. Log a dev_dbg
> message in case someone wants to confirm why board.id is not showing up
> for them.
>
> Fixes: e961b679fb0b ("ice: add board identifier info to devlink .info_get")
> Signed-off-by: Jacob Keller <jacob.e.keller@...el.com>
> Tested-by: Tony Brelinski <tonyx.brelinski@...el.com>
> Signed-off-by: Tony Nguyen <anthony.l.nguyen@...el.com>
> ---
Ack! Thanks for taking up the work to split this, Tony! I really appreciate it.
(Thanks also Kuba for helping make a clean net-fix, this is definitely the better approach!)
Regards,
Jake
> v2:
> - Removed refactors - to be submitted later as separate patch through net-next
> - Changed 'PBA' to 'board identifier' in title
>
> drivers/net/ethernet/intel/ice/ice_devlink.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/intel/ice/ice_devlink.c
> b/drivers/net/ethernet/intel/ice/ice_devlink.c
> index 91b545ab8b8f..7fe6e8ea39f0 100644
> --- a/drivers/net/ethernet/intel/ice/ice_devlink.c
> +++ b/drivers/net/ethernet/intel/ice/ice_devlink.c
> @@ -42,7 +42,9 @@ static int ice_info_pba(struct ice_pf *pf, struct ice_info_ctx
> *ctx)
>
> status = ice_read_pba_string(hw, (u8 *)ctx->buf, sizeof(ctx->buf));
> if (status)
> - return -EIO;
> + /* We failed to locate the PBA, so just skip this entry */
> + dev_dbg(ice_pf_to_dev(pf), "Failed to read Product Board
> Assembly string, status %s\n",
> + ice_stat_str(status));
>
> return 0;
> }
> --
> 2.26.2
Powered by blists - more mailing lists