[rds-devel] [PATCH net] rds: MP-RDS may use an invalid c_path
David Miller
davem at davemloft.net
Wed Apr 11 07:24:28 PDT 2018
From: Ka-Cheong Poon <ka-cheong.poon at oracle.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 at oracle.com>
Applied and queued up for -stable, thanks.
More information about the rds-devel
mailing list