Commit 429baa6f authored by Bert Kenward's avatar Bert Kenward Committed by David S. Miller

sfc: check async completer is !NULL before calling

Add a NULL check before calling asynchronous MCDI completion functions
during device removal.

Fixes: 7014d7f6 ("sfc: allow asynchronous MCDI without completion function")
Signed-off-by: default avatarBert Kenward <bkenward@solarflare.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 88e4f759
...@@ -1156,7 +1156,8 @@ void efx_mcdi_flush_async(struct efx_nic *efx) ...@@ -1156,7 +1156,8 @@ void efx_mcdi_flush_async(struct efx_nic *efx)
* acquired locks in the wrong order. * acquired locks in the wrong order.
*/ */
list_for_each_entry_safe(async, next, &mcdi->async_list, list) { list_for_each_entry_safe(async, next, &mcdi->async_list, list) {
async->complete(efx, async->cookie, -ENETDOWN, NULL, 0); if (async->complete)
async->complete(efx, async->cookie, -ENETDOWN, NULL, 0);
list_del(&async->list); list_del(&async->list);
kfree(async); kfree(async);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment