This is intended to support control work requests that manipulate
connection state but do not transmit data. Raw WRs are transmitted
immediately if possible, otherwise they are queued to an mbufq in the
toe pcb until sufficient credits are available. Raw WRs take
precendence over transmitting socket data.
Details
Details
- Reviewers
np
Diff Detail
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Skipped - Unit
Tests Skipped - Build Status
Buildable 60800 Build 57684: arc lint + arc unit
Event Timeline
sys/dev/cxgbe/tom/t4_cpl_io.c | ||
---|---|---|
642 | In the first version of this I enqueued the mbuf into the ulp_reclaim_pduq as we do for iSCSI WRs, but then I realized that I didn't need to do that once the data is copied. iSCSI WRs are a bit different as they can represent DMA and might need to be freed until ACKed, but the "control" WRs are always immediate actions and the mbuf is never holding onto other resources. ULP_MODE_TLS is also kind of special as it abuses ulp_reclaim_pduq to store received CPL_RX_TLS_DATA mbufs that are later attached to the header from CPL_RX_TLS_CMP to build a TLS PDU, so I also had to change that before simplifying the approach here. |