> This is a rather unusual problem that can come up when fallback=true BEFORE smc_connect() > is called. But nevertheless, it is a problem. > > Right now I am not sure if it is okay when we NOT hold a ref to smc->sk during all fallback > processing. This change also conflicts with a patch that is already on net-next (3aba1030). Do you mean put the ref to smc->sk during all fallback processing unconditionally and remove the fallback branch sock_put() in __smc_release()? > With the new patch on net-next it would also be possible to detect in __smc_release() that > the socket is in state sk->sk_state == SMC_INIT but the sock->state is SS_CONNECTING or > SS_CONNECTED and call sock_put() in this case. > What do you think? Oh, I didn't notice this patch on net-next. Emm, I think I need to do some testing with this patch. Thank you.