From mboxrd@z Thu Jan 1 00:00:00 1970 From: Karen Xie Subject: [PATCH net v8 7/7] libcxgbi: fix freeing skb prematurely Date: Wed, 10 Dec 2014 13:11:24 -0800 Message-ID: <201412102111.sBALBOjn011692@localhost6.localdomain6> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: kxie@chelsio.com, hariprasad@chelsio.com, anish@chelsio.com, hch@infradead.org, James.Bottomley@HansenPartnership.com, michaelc@cs.wisc.edu, davem@davemloft.net To: linux-scsi@vger.kernel.org, netdev@vger.kernel.org Return-path: Received: from stargate.chelsio.com ([67.207.112.58]:29720 "EHLO stargate.chelsio.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932527AbaLJVOH (ORCPT ); Wed, 10 Dec 2014 16:14:07 -0500 Sender: netdev-owner@vger.kernel.org List-ID: From: Karen Xie With debug turned on the debug print would access the skb after it is freed. Fix it to free the skb after the debug print. Signed-off-by: Karen Xie --- drivers/scsi/cxgbi/libcxgbi.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/drivers/scsi/cxgbi/libcxgbi.c b/drivers/scsi/cxgbi/libcxgbi.c index 7da59c3..eb58afc 100644 --- a/drivers/scsi/cxgbi/libcxgbi.c +++ b/drivers/scsi/cxgbi/libcxgbi.c @@ -2294,10 +2294,12 @@ int cxgbi_conn_xmit_pdu(struct iscsi_task *task) return err; } - kfree_skb(skb); log_debug(1 << CXGBI_DBG_ISCSI | 1 << CXGBI_DBG_PDU_TX, "itt 0x%x, skb 0x%p, len %u/%u, xmit err %d.\n", task->itt, skb, skb->len, skb->data_len, err); + + kfree_skb(skb); + iscsi_conn_printk(KERN_ERR, task->conn, "xmit err %d.\n", err); iscsi_conn_failure(task->conn, ISCSI_ERR_XMIT_FAILED); return err;