PROBLEM: (91878, GB_G04640) (PATCH ID: OSF540-056) ******** QAR 91878 --------- This patch adds the capability for KZPCA devices to work with SCSI devices that only support asynchronous data transfers. Typically this problem with data transfer negotiation happens during boot and results in certain SCSI devices not being available after OS boot has completed. ie- these SCSI devices would be seen at console level but not under Tru64 and there would be console error messages related to these devices during boot. Previously ,during data transfer negotiations, the KZPCA would issue a MESSAGE REJECT message when it received a SYNCHRONOUS DATA TRANSFER REQUEST message with REQ/ACK offset set to zero from a target. However this is a valid SCSI transaction indicating that the target does not support synchronous data transfers with the implied agreement that data transfer mode should be set to asynchronous mode. GB_G04640 --------- Under certain type of tape errors, the SDLT tape drive sends SCSI messages to the KZPCA adapter which, while still compliant with the SCSI signalling specifications, are semantically wrong. This causes the adapter to suspend the SCSI bus for 30+ seconds and reset the bus. The fix in this patch kit prevents the bus suspension and reset, which is disruptive, from happening and enables the recovery of the source of error from the tape drive. SCSI trace shows 546329 299_880 Bus Free 546330 3_300 Arb 546331 2_236 Arbwin 7 546332 0_932 +Select 7,1 546333 0_952 +Sel/Resel End 546334 3_952 +MsgOut C0 Identify 546335 11_652 CMD - Write(6) <-- KZPCA sends a write to the tape 0A 00 00 0F CE 00 546336 4_668 MsgIn 02 Save Data Ptr 04 Disconnect <-- tape disconnects to complete the operation 546337 72.984_698_496 Bus Free 546338 2_428 Arb 546339 1_364 Arbwin 1 546340 1_232 Resel 7,1 <-- tape reconnects 546341 0_492 Sel/Resel End 546342 37.835_845_308 MsgIn 80 Identify 02 Save Data Ptr <<< tape sends a SDP message ! 04 Disconnect 546343 92_568 Bus Reset <-- KZPCA resets bus after 37 seconds 546344 21_993_576 Bus Free Problem: tape reconnects, sends and identify then a Save data pointer (SDP) message. The KZPCA driver is not expecting the SDP message at this point since it does not make any sense. The code falls into the default handler which hangs the bus. The bus eventually gets reset.