diff --git a/net/smc/af_smc.c b/net/smc/af_smc.c index 284befa..519fb89 100644 --- a/net/smc/af_smc.c +++ b/net/smc/af_smc.c @@ -136,6 +136,11 @@ static void smc_restore_fallback_changes(struct smc_sock *smc) if (smc->clcsock->file) { /* non-accepted sockets have no file yet */ smc->clcsock->file->private_data = smc->sk.sk_socket; smc->clcsock->file = NULL; + + clcsk->sk_state_change = smc->clcsk_state_change; + clcsk->sk_data_ready = smc->clcsk_data_ready; + clcsk->sk_write_space = smc->clcsk_write_space; + clcsk->sk_error_report = smc->clcsk_error_report; } }