Date: Sun, 7 Jun 2009 04:39:58 +0000 (UTC) From: Kip Macy <kmacy@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r193608 - user/kmacy/releng_7_2_fcs/sys/dev/cxgb Message-ID: <200906070439.n574dwNh081632@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: kmacy Date: Sun Jun 7 04:39:58 2009 New Revision: 193608 URL: http://svn.freebsd.org/changeset/base/193608 Log: - revert to previous compl setting - fix multi-WR send Modified: user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_sge.c Modified: user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_sge.c ============================================================================== --- user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_sge.c Sun Jun 7 03:51:52 2009 (r193607) +++ user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_sge.c Sun Jun 7 04:39:58 2009 (r193608) @@ -1055,8 +1055,8 @@ txq_prod(struct sge_txq *txq, unsigned i */ txqs->gen = txq->gen; txq->unacked += ndesc; - txqs->compl = (txq->unacked & 8) << (S_WR_COMPL - 3); - txq->unacked &= 7; + txqs->compl = (txq->unacked & 32) << (S_WR_COMPL - 5); + txq->unacked &= 31; txqs->pidx = txq->pidx; txq->pidx += ndesc; #ifdef INVARIANTS @@ -1304,7 +1304,9 @@ write_wr_hdr_sgl(unsigned int ndesc, str wr_gen2(txd, txqs->gen); flits = 1; } - set_wr_hdr(wrp, wrp->wrh_hi |= htonl(F_WR_EOP), + wrp->wrh_hi |= htonl(F_WR_EOP); + + set_wr_hdr(wrp, wrp->wrh_hi, htonl(V_WR_LEN(WR_FLITS) | V_WR_GEN(ogen)) | wr_lo); wr_gen2((struct tx_desc *)wp, ogen); } @@ -1372,6 +1374,7 @@ t3_encap(struct sge_qset *qs, struct mbu printf("failed ... err=%d\n", err); return (err); } + mlen = m0->m_pkthdr.len; ndesc = calc_tx_descs(m0, nsegs); } txq_prod(txq, ndesc, &txqs); @@ -1427,7 +1430,6 @@ t3_encap(struct sge_qset *qs, struct mbu GET_VTAG(cntrl, m0); cntrl |= V_TXPKT_OPCODE(CPL_TX_PKT_LSO); hdr->cntrl = htonl(cntrl); - mlen = m0->m_pkthdr.len; hdr->len = htonl(mlen | 0x80000000); DPRINTF("tso buf len=%d\n", mlen); @@ -1500,7 +1502,6 @@ t3_encap(struct sge_qset *qs, struct mbu if (__predict_false(!(m0->m_pkthdr.csum_flags & (CSUM_TCP | CSUM_UDP)))) cntrl |= F_TXPKT_L4CSUM_DIS; cpl->cntrl = htonl(cntrl); - mlen = m0->m_pkthdr.len; cpl->len = htonl(mlen | 0x80000000); if (mlen <= PIO_LEN) {
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906070439.n574dwNh081632>