[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20180411.102428.2000222108532218799.davem@davemloft.net>
Date: Wed, 11 Apr 2018 10:24:28 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: ka-cheong.poon@...cle.com
Cc: netdev@...r.kernel.org, santosh.shilimkar@...cle.com,
rds-devel@....oracle.com
Subject: Re: [PATCH net] rds: MP-RDS may use an invalid c_path
From: Ka-Cheong Poon <ka-cheong.poon@...cle.com>
Date: Wed, 11 Apr 2018 00:57:25 -0700
> rds_sendmsg() calls rds_send_mprds_hash() to find a c_path to use to
> send a message. Suppose the RDS connection is not yet up. In
> rds_send_mprds_hash(), it does
>
> if (conn->c_npaths == 0)
> wait_event_interruptible(conn->c_hs_waitq,
> (conn->c_npaths != 0));
>
> If it is interrupted before the connection is set up,
> rds_send_mprds_hash() will return a non-zero hash value. Hence
> rds_sendmsg() will use a non-zero c_path to send the message. But if
> the RDS connection ends up to be non-MP capable, the message will be
> lost as only the zero c_path can be used.
>
> Signed-off-by: Ka-Cheong Poon <ka-cheong.poon@...cle.com>
Applied and queued up for -stable, thanks.
Powered by blists - more mailing lists