[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d9f096a8-a5d7-1e91-ea87-ad0593c49f18@oracle.com>
Date: Wed, 10 Jul 2019 22:26:04 +0800
From: Yanjun Zhu <yanjun.zhu@...cle.com>
To: Santosh Shilimkar <santosh.shilimkar@...cle.com>,
netdev@...r.kernel.org, davem@...emloft.net
Subject: Re: [net][PATCH 5/5] rds: avoid version downgrade to legitimate newer
peer connections
On 2019/7/10 13:32, Santosh Shilimkar wrote:
> Connections with legitimate tos values can get into usual connection
> race. It can result in consumer reject. We don't want tos value or
> protocol version to be demoted for such connections otherwise
> piers would end up different tos values which can results in
> no connection. Example a peer initiated connection with say
> tos 8 while usual connection racing can get downgraded to tos 0
> which is not desirable.
>
> Patch fixes above issue introduced by commit
> commit d021fabf525f ("rds: rdma: add consumer reject")
>
> Reported-by: Yanjun Zhu <yanjun.zhu@...cle.com>
> Tested-by: Yanjun Zhu <yanjun.zhu@...cle.com>
Thanks. I am OK with this.
Zhu Yanjun
> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@...cle.com>
> ---
> net/rds/rdma_transport.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/net/rds/rdma_transport.c b/net/rds/rdma_transport.c
> index 9db455d..ff74c4b 100644
> --- a/net/rds/rdma_transport.c
> +++ b/net/rds/rdma_transport.c
> @@ -117,8 +117,10 @@ static int rds_rdma_cm_event_handler_cmn(struct rdma_cm_id *cm_id,
> ((*err) <= RDS_RDMA_REJ_INCOMPAT))) {
> pr_warn("RDS/RDMA: conn <%pI6c, %pI6c> rejected, dropping connection\n",
> &conn->c_laddr, &conn->c_faddr);
> - conn->c_proposed_version = RDS_PROTOCOL_COMPAT_VERSION;
> - conn->c_tos = 0;
> +
> + if (!conn->c_tos)
> + conn->c_proposed_version = RDS_PROTOCOL_COMPAT_VERSION;
> +
> rds_conn_drop(conn);
> }
> rdsdebug("Connection rejected: %s\n",
Powered by blists - more mailing lists