--- ./source/private_module/tgt/pmfc_tgtio.c	2018-04-10 09:52:48.000000000 +0000
+++ ./source/private_module/tgt/pmfc_tgtio.c.hotpatch	2018-10-30 11:33:55.000000000 +0000
@@ -3335,7 +3335,6 @@
             PMFC_TRACE(0x3e87,OSP_DBL_MAJOR, "Send the Xchg(0x%p) Stat(0x%x) fcxchg(0x%p) wtih ox_id(0x%x) bad dif rsp.", 
                                                 pstXchg, pstXchg->IoState, pstXchg->pTSDKExchg, pstXchg->usOX_ID);
         PRODUCT_PRINT_PERIOD_LIMIT_END();
-            
         /*ExchangeԹԱȷ֮*/
         pstXchg->pTSDKExchg = pstXchg->hpIORequest.fcData;
         //PF_TgtAddXferTimer(pstXchg, 30UL);
@@ -3356,10 +3355,11 @@
             PMFC_TRACE(0x3e88,OSP_DBL_MAJOR, "fcIOCleanup Xchg(0x%p) Stat(0x%x) fcxchg(0x%p)  wtih ox_id(0x%x).", 
                                              pstXchg, pstXchg->IoState, pstXchg->pTSDKExchg, pstXchg->usOX_ID);
         PRODUCT_PRINT_PERIOD_LIMIT_END();
-        
-        (OSP_VOID)fcIOCleanup(pstXchg->phpRoot, &pstXchg->hpIORequest);
+        if (fcRcSuccess != fcIOCleanup(pstXchg->phpRoot, &pstXchg->hpIORequest))
+        {
+            PF_DoneTgtCmd(pstXchg, B_FALSE);
+        }
     }
-
     return;
 }
 
