[rds-devel] [PATCH net-next 1/3] net/rds: Use a single TCP socket for both send and receive.

santosh shilimkar santosh.shilimkar at oracle.com
Wed Sep 30 09:13:47 PDT 2015


On 9/30/2015 9:09 AM, Sowmini Varadhan wrote:
> On (09/30/15 08:50), santosh shilimkar wrote:
>>>   	rs_tcp = (struct rds_tcp_connection *)conn->c_transport_data;
>>> -	WARN_ON(!rs_tcp || rs_tcp->t_sock);
>>> +	if (rs_tcp->t_sock && inet->inet_saddr < inet->inet_daddr) {
>>> +		struct sock *nsk = new_sock->sk;
>>>
>> Any reason you dropped the WARN_ON. Note that till we got commit
>> 74e98eb0 (" RDS: verify the underlying transport exists before creating
>> a connection") merged, we had an issue. That guards it now.
>
> That was done deliberately. Now that we have only one tcp socket,
> we can run into an rds_tcp_connection for an outgoing connection
> that we initiated, thus rs_tcp->t_sock can be non-null - which is
> why a new check is added in the newly added line in the patch.
>
Thanks for clarification.

Regards,
Santosh



More information about the rds-devel mailing list