diff --git a/net/smc/smc_core.c b/net/smc/smc_core.c index c0b1131776a353ec93d48d08304518bece409b70..b985efc73a2a30aa207df5d7919ca3ff9c93cc0f 100644 --- a/net/smc/smc_core.c +++ b/net/smc/smc_core.c @@ -1064,7 +1064,8 @@ static int smc_lgr_create(struct smc_sock *smc, struct smc_init_info *ini) lgr->max_conns = ini->max_conns; lgr->max_links = ini->max_links; lgr->credits_en = ini->vendor_opt_valid && ini->credits_en; - lgr->use_rwwi = ini->vendor_opt_valid && ini->rwwi_en; + /* use_rwwi is limited for single link lgr */ + lgr->use_rwwi = ini->vendor_opt_valid && ini->rwwi_en && lgr->max_links <= 1; } else { ibdev = ini->ib_dev; ibport = ini->ib_port;