cxgbe/cxgbei: Provide a knob to set the DDP threshold for iSCSI

transfers.

The Initiator and Target both perform zero copy receive for transfers
greater than or equal to this threshold.

Sponsored by:	Chelsio Communications
This commit is contained in:
Navdeep Parhar 2016-09-02 00:21:24 +00:00
parent 466522c3ac
commit af4251f3a1

View File

@ -192,9 +192,7 @@ cxgbei_init(struct adapter *sc, struct cxgbei_data *ci)
read_pdu_limits(sc, &ci->max_tx_pdu_len, &ci->max_rx_pdu_len);
ci->ddp_threshold = 2048;
pr = &ci->pr;
r = t4_read_reg(sc, A_ULP_RX_ISCSI_PSZ);
rc = t4_init_ppod_region(pr, &sc->vres.iscsi, r, "iSCSI page pods");
if (rc != 0) {
@ -249,6 +247,10 @@ cxgbei_init(struct adapter *sc, struct cxgbei_data *ci)
CTLFLAG_RD, &ci->fl_pdus,
"# of PDUs with data delivered in freelist");
ci->ddp_threshold = 2048;
SYSCTL_ADD_UINT(&ci->ctx, children, OID_AUTO, "ddp_threshold",
CTLFLAG_RW, &ci->ddp_threshold, 0, "Rx zero copy threshold");
return (0);
}