diff --git a/iscsi-scst/kernel/isert-scst/iser_rdma.c b/iscsi-scst/kernel/isert-scst/iser_rdma.c index 6caf5c991..e2d8180b6 100644 --- a/iscsi-scst/kernel/isert-scst/iser_rdma.c +++ b/iscsi-scst/kernel/isert-scst/iser_rdma.c @@ -427,14 +427,16 @@ static void isert_send_completion_handler(struct isert_wr *wr) struct isert_cmnd *isert_pdu = wr->pdu; struct iscsi_cmnd *iscsi_pdu = &isert_pdu->iscsi; struct iscsi_cmnd *iscsi_req_pdu = iscsi_pdu->parent_req; - struct isert_cmnd *isert_req_pdu = container_of(iscsi_req_pdu, - struct isert_cmnd, iscsi); TRACE_ENTRY(); - if (iscsi_req_pdu && iscsi_req_pdu->bufflen && - isert_req_pdu->is_rstag_valid) - isert_data_in_sent(iscsi_req_pdu); + if (iscsi_req_pdu && iscsi_req_pdu->bufflen) { + struct isert_cmnd *isert_req_pdu = + container_of(iscsi_req_pdu, struct isert_cmnd, iscsi); + + if (isert_req_pdu->is_rstag_valid) + isert_data_in_sent(iscsi_req_pdu); + } isert_pdu_sent(iscsi_pdu);