On 3/22/23 9:08 PM, Paolo Abeni wrote:
It looks like only the shadow sockets' receive queue is needed/used. Have you considered instead adding 2 receive queues to smc_sock, and implement a custom accept() variant fetching the accepted sockets from there? That will allow better encapsulating the changes into the smc code and will avoid creating that 2 non-listening but almost listening sockets which look quite strange. Cheers, Paolo
I am not so sure about this two sockets implementation but Here are my concerns: 1. When I tried to implement a custom accept, I found the function. mem_cgroup_charge_skmem is not exported and SMC-R couldn't access it as a module. If there are more functions like this in future updates this could be a problem. 3. The custom accept should synchronize with future updates of TCP accept. 2. SMC-R is trying to behave like TCP and if we implement custom accept, there may be repeated code and looks not good. Thanks, Kai