Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 11 Jan 2008 17:29:12 GMT
From:      Steve Wise <swise@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 133055 for review
Message-ID:  <200801111729.m0BHTCd8016367@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=133055

Change 133055 by swise@swise:vic10:iwarp on 2008/01/11 17:28:31

	TERMINATE WRs can hang the tx ofld queue
	
	Don't set the gen bits nor length bits in the terminate WR.  This is
	done by the LLD driver.

Affected files ...

.. //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_iwch_qp.c#3 edit

Differences ...

==== //depot/projects/iwarp/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_iwch_qp.c#3 (text+ko) ====

@@ -680,9 +680,10 @@
 	/* immediate data starts here. */
 	term = (struct terminate_message *)wqe->send.sgl;
 	build_term_codes(rsp_msg, &term->layer_etype, &term->ecode);
-	build_fw_riwrh((void *)wqe, T3_WR_SEND,
-		       T3_COMPLETION_FLAG | T3_NOTIFY_FLAG, 1,
-		       qhp->ep->hwtid, 5);
+	wqe->send.wrh.op_seop_flags = cpu_to_be32(V_FW_RIWR_OP(T3_WR_SEND) |
+		V_FW_RIWR_FLAGS(T3_COMPLETION_FLAG | T3_NOTIFY_FLAG));
+	wqe->send.wrh.gen_tid_len = cpu_to_be32(V_FW_RIWR_TID(qhp->ep->hwtid));
+
 	m_set_priority(m, CPL_PRIORITY_DATA);
 	return cxgb_ofld_send(qhp->rhp->rdev.t3cdev_p, m);
 }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200801111729.m0BHTCd8016367>