Re: [PATCH v2 net] ice: Fix NULL pointer access, if PF doesn't support SRIOV_LAG

Przemek Kitszel
2024-08-27T09:53:16Z

On 8/27/24 09:16, Thomas Bogendoerfer wrote:
> For PFs, which don't support SRIOV_LAG, there is no pf->lag struct
> allocated. So before accessing pf->lag a NULL pointer check is needed.
>
> Fixes: 1e0f9881ef79 ("ice: Flesh out implementation of support for SRIOV on bonded interface")
> Signed-off-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
> ---
> v2:
> - Added Fixes tag
> v1: https://lore.kernel.org/netdev/20240826085830.28136-1-tbogendoerfer@suse.de/

Please see my reply to v1, unfortunately sent at the same time as your
v2. The fixes tag should be different. The check that you have
introduced here repeats the check in the only caller (was not effective
though).

>
> drivers/net/ethernet/intel/ice/ice_lag.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/intel/ice/ice_lag.c b/drivers/net/ethernet/intel/ice/ice_lag.c
> index 1ccb572ce285..916a16a379a8 100644
> --- a/drivers/net/ethernet/intel/ice/ice_lag.c
> +++ b/drivers/net/ethernet/intel/ice/ice_lag.c
> @@ -704,7 +704,7 @@ void ice_lag_move_new_vf_nodes(struct ice_vf *vf)
> lag = pf->lag;
>
> mutex_lock(&pf->lag_mutex);
> - if (!lag->bonded)
> + if (!lag || !lag->bonded)
> goto new_vf_unlock;
>
> pri_port = pf->hw.port_info->lport;