The attached patch fixes the NULL pointer dereference that caused the oops.

However, the underlying problem with tagged queueing is still there.
The following error message is now output:

DC390: pSRB == pTmpSRB! (TagQ Error?) (00-0)

This is followed by a SCSI command timeout etc etc etc. Eventually it sorts
itself out.

Cheers,
Bradley

Bradley Broom                              
Research Scientist,
Center for High Performance Software, Rice University.
Email: [EMAIL PROTECTED], Phone: 713-348-6220
--- scsiiom.c-orig      Thu Mar 29 22:35:28 2001
+++ scsiiom.c   Thu Mar 29 22:35:35 2001
@@ -586,7 +586,8 @@
 {
     pSRB->MsgOutBuf[0] = ABORT; 
     pSRB->MsgCnt = 1; DC390_ENABLE_MSGOUT;
-    pSRB->pSRBDCB->DCBFlag &= ~ABORT_DEV_;
+    if (pSRB->pSRBDCB)
+        pSRB->pSRBDCB->DCBFlag &= ~ABORT_DEV_;
 }
 
 static PSRB

Reply via email to