On 6/15/20 9:14 PM, Shannon Nelson wrote:
> If the driver is busy resetting queues after a change in
> MTU or queue parameters, don't bother checking the link,
> wait until the next watchdog cycle.
> 
> Fixes: 987c0871e8ae ("ionic: check for linkup in watchdog")
> Signed-off-by: Shannon Nelson <snel...@pensando.io>
> ---
>  drivers/net/ethernet/pensando/ionic/ionic_lif.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/pensando/ionic/ionic_lif.c 
> b/drivers/net/ethernet/pensando/ionic/ionic_lif.c
> index 9d8c969f21cb..bfadc4934702 100644
> --- a/drivers/net/ethernet/pensando/ionic/ionic_lif.c
> +++ b/drivers/net/ethernet/pensando/ionic/ionic_lif.c
> @@ -96,7 +96,8 @@ static void ionic_link_status_check(struct ionic_lif *lif)
>       u16 link_status;
>       bool link_up;
>  
> -     if (!test_bit(IONIC_LIF_F_LINK_CHECK_REQUESTED, lif->state))
> +     if (!test_bit(IONIC_LIF_F_LINK_CHECK_REQUESTED, lif->state) ||
> +         test_bit(IONIC_LIF_F_QUEUE_RESET, lif->state))
>               return;
>  
>       link_status = le16_to_cpu(lif->info->status.link_status);
> 

Would a firmware reset bit being asserted also cause an issue here
(IONIC_LIF_F_FW_RESET)? Meaning do we need to test for this bit as well?

Reply via email to