net: thunderbolt: Tear down connection properly on suspend
authorMika Westerberg <mika.westerberg@linux.intel.com>
Mon, 12 Feb 2018 14:10:19 +0000 (17:10 +0300)
committerDavid S. Miller <davem@davemloft.net>
Mon, 12 Feb 2018 17:03:04 +0000 (12:03 -0500)
When suspending to mem or disk the Thunderbolt controller typically goes
down as well tearing down the connection automatically. However, when
suspend to idle is used this does not happen so we need to make sure the
connection is properly disconnected before it can be re-established
during resume.

Fixes: e69b6c02b4c3 ("net: Add support for networking over Thunderbolt cable")
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Cc: stable@vger.kernel.org
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/thunderbolt.c

index ca5e375de27c131534ce1bd2768b787be2fb908f..71cf9ab72fbcf9dc41ec9c74751fc59ad7560dd6 100644 (file)
@@ -1270,10 +1270,7 @@ static int __maybe_unused tbnet_suspend(struct device *dev)
        stop_login(net);
        if (netif_running(net->dev)) {
                netif_device_detach(net->dev);
-               tb_ring_stop(net->rx_ring.ring);
-               tb_ring_stop(net->tx_ring.ring);
-               tbnet_free_buffers(&net->rx_ring);
-               tbnet_free_buffers(&net->tx_ring);
+               tbnet_tear_down(net, true);
        }
 
        return 0;