summaryrefslogtreecommitdiff
path: root/net/smc/smc_core.c
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2020-03-11 21:45:26 +0300
committerMark Brown <broonie@kernel.org>2020-03-11 21:45:26 +0300
commit4d90a4e677c5c45c787a774c84442e75c7ddd5be (patch)
tree50312d13362dd49615148661ae7e6d91ac349719 /net/smc/smc_core.c
parent9032cdd96a2d4b0ef2f43499328f8a68050be2ec (diff)
parent2c523b344dfa65a3738e7039832044aa133c75fb (diff)
downloadlinux-4d90a4e677c5c45c787a774c84442e75c7ddd5be.tar.xz
Merge tag 'v5.6-rc5' into asoc-5.7
Linux 5.6-rc5
Diffstat (limited to 'net/smc/smc_core.c')
-rw-r--r--net/smc/smc_core.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/net/smc/smc_core.c b/net/smc/smc_core.c
index 2249de5379ee..5b085efa3bce 100644
--- a/net/smc/smc_core.c
+++ b/net/smc/smc_core.c
@@ -162,6 +162,18 @@ static void smc_lgr_unregister_conn(struct smc_connection *conn)
conn->lgr = NULL;
}
+void smc_lgr_cleanup_early(struct smc_connection *conn)
+{
+ struct smc_link_group *lgr = conn->lgr;
+
+ if (!lgr)
+ return;
+
+ smc_conn_free(conn);
+ smc_lgr_forget(lgr);
+ smc_lgr_schedule_free_work_fast(lgr);
+}
+
/* Send delete link, either as client to request the initiation
* of the DELETE LINK sequence from server; or as server to
* initiate the delete processing. See smc_llc_rx_delete_link().