On 01/11/2021 07:15, Wen Gu wrote: > Before explaining my intentions, I thought it would be better to describe the issue I encountered first: > > In nginx/wrk tests, when nginx uses TCP and wrk uses SMC to replace TCP, wrk should fall back to TCP and get correct results theoretically, But in fact it only got all zeros. Thank you for the very detailed description, I now understand the situation. The fix is not obvious and not easy to understand for the reader of the code, did you think about a fix that uses own sk_data_ready / sk_write_space implementations on the SMC socket to forward the call to the clcsock in the fallback situation? I.e. we already have smc_tx_write_space(), and there is smc_clcsock_data_ready() which is right now only used for the listening socket case. If this works this would be a much cleaner and more understandable way to fix this issue.