From: Karen Xie Date: Fri, 12 Dec 2014 03:13:32 +0000 (-0800) Subject: cxgb4i: fix credit check for tx_data_wr X-Git-Tag: v3.19-rc1~94^2~5^2~5 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=7857c62a35041a21a66ccab551601c942b748330;p=karo-tx-linux.git cxgb4i: fix credit check for tx_data_wr make sure any tx credit related checking is done before adding the wr header. Signed-off-by: Karen Xie Signed-off-by: David S. Miller --- diff --git a/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c b/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c index 8abe8a303386..197d7de189fb 100644 --- a/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c +++ b/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c @@ -549,10 +549,11 @@ static inline void make_tx_data_wr(struct cxgbi_sock *csk, struct sk_buff *skb, struct fw_ofld_tx_data_wr *req; unsigned int submode = cxgbi_skcb_ulp_mode(skb) & 3; unsigned int wr_ulp_mode = 0, val; + bool imm = is_ofld_imm(skb); req = (struct fw_ofld_tx_data_wr *)__skb_push(skb, sizeof(*req)); - if (is_ofld_imm(skb)) { + if (imm) { req->op_to_immdlen = htonl(FW_WR_OP_V(FW_OFLD_TX_DATA_WR) | FW_WR_COMPL_F | FW_WR_IMMDLEN_V(dlen));