diff options
author | Karsten Graul <kgraul@linux.ibm.com> | 2020-05-01 13:48:09 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2020-05-02 02:20:04 +0300 |
commit | 87523930a16eb57ebb20318e92b5df4b64fe8b20 (patch) | |
tree | 4f577d099fe20de54107b0db48b0b3c7b7cf71b3 /net/smc/smc_core.c | |
parent | 541afa10c126b6c22c2a805a559c70cc41fd156e (diff) | |
download | linux-87523930a16eb57ebb20318e92b5df4b64fe8b20.tar.xz |
net/smc: take link down instead of terminating the link group
Use the introduced link down processing in all places where the link
group is terminated and take down the affected link only.
Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
Reviewed-by: Ursula Braun <ubraun@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/smc/smc_core.c')
-rw-r--r-- | net/smc/smc_core.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/net/smc/smc_core.c b/net/smc/smc_core.c index 62108e0cd529..849ae3f9b796 100644 --- a/net/smc/smc_core.c +++ b/net/smc/smc_core.c @@ -884,11 +884,8 @@ void smc_smcr_terminate_all(struct smc_ib_device *smcibdev) } else { list_for_each_entry_safe(lgr, lg, &smc_lgr_list.list, list) { for (i = 0; i < SMC_LINKS_PER_LGR_MAX; i++) { - if (lgr->lnk[i].smcibdev == smcibdev) { - list_move(&lgr->list, &lgr_free_list); - lgr->freeing = 1; - break; - } + if (lgr->lnk[i].smcibdev == smcibdev) + smcr_link_down_cond_sched(&lgr->lnk[i]); } } } |