]> git.baikalelectronics.ru Git - kernel.git/commit
net: thunderbolt: Run disconnect flow asynchronously when logout is received
authorMika Westerberg <mika.westerberg@linux.intel.com>
Mon, 12 Feb 2018 14:10:20 +0000 (17:10 +0300)
committerDavid S. Miller <davem@davemloft.net>
Mon, 12 Feb 2018 17:03:04 +0000 (12:03 -0500)
commit427e1faec97eb43e39e87ffaa8ccf9ff9ac54569
treebbee36ebf269c564f53dc8a604c6543849d7078d
parent2d6c77c11b7b4d772a255a18f4a7570c7963975a
net: thunderbolt: Run disconnect flow asynchronously when logout is received

The control channel calls registered callbacks when control messages
such as XDomain protocol messages are received. The control channel
handling is done in a worker running on system workqueue which means the
networking driver can't run tear down flow which includes sending
disconnect request and waiting for a reply in the same worker. Otherwise
reply is never received (as the work is already running) and the
operation times out.

To fix this run disconnect ThunderboltIP flow asynchronously once
ThunderboltIP logout message is received.

Fixes: 01817f116f85 ("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