ionic: no link check while resetting queues
authorShannon Nelson <snelson@pensando.io>
Tue, 16 Jun 2020 01:14:59 +0000 (18:14 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 22 Jul 2020 07:34:28 +0000 (09:34 +0200)
commit 3103b6feb4454646558eedc50ece728bc469f341 upstream.

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 <snelson@pensando.io>
Acked-by: Jonathan Toppins <jtoppins@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/pensando/ionic/ionic_lif.c

index b591bec0301cc74175ae8993e8ca668e25f035e4..44c1023549c315df86ba44ae49049def48d45e56 100644 (file)
@@ -85,7 +85,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;
 
        if (lif->ionic->is_mgmt_nic)