[ofa-general] IB/ehca: Reject send WRs only for RESET, INIT and RTR state

Dotan Barak dotanba at gmail.com
Sat Jun 7 06:20:33 EST 2008


Hi.

I checked the code in the ehca driver and noticed that
post RR to a QP is being accepted in any state (including the RESET state).

thanks
Dotan

Joachim Fenkes wrote:
> Signed-off-by: Joachim Fenkes <fenkes at de.ibm.com>
> ---
>  drivers/infiniband/hw/ehca/ehca_reqs.c |    6 ++++--
>  1 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/infiniband/hw/ehca/ehca_reqs.c b/drivers/infiniband/hw/ehca/ehca_reqs.c
> index bbe0436..f093b00 100644
> --- a/drivers/infiniband/hw/ehca/ehca_reqs.c
> +++ b/drivers/infiniband/hw/ehca/ehca_reqs.c
> @@ -421,8 +421,10 @@ int ehca_post_send(struct ib_qp *qp,
>  	int ret = 0;
>  	unsigned long flags;
>  
> -	if (unlikely(my_qp->state != IB_QPS_RTS)) {
> -		ehca_err(qp->device, "QP not in RTS state  qpn=%x", qp->qp_num);
> +	/* Reject WR if QP is in RESET, INIT or RTR state */
> +	if (unlikely(my_qp->state < IB_QPS_RTS)) {
> +		ehca_err(qp->device, "Invalid QP state  qp_state=%d qpn=%x",
> +			 my_qp->state, qp->qp_num);
>  		return -EINVAL;
>  	}
>  
>   




More information about the Linuxppc-dev mailing list