James, thank you for the corrections. I think I can fix all of these as suggested and resubmit a new patch shortly. >Another thing that strikes me is on the ARM side, it looks like this is >effectively vectoring up to a user space target ... is that true? And >if so, would the existing in-kernel target infrastructure be a better >way of doing this? No, there's no user space target. The target is special hardware. Or more precisely, special communication hardware to send messages to off-core hardware. >> +static int imu_queuecommand(struct scsi_cmnd *scp, >[...] >> + if (!imu_scsi->connection_handle) { >> + scp->result = (DID_RESET << 16) | (SUGGEST_RETRY << 24); >> + done(scp); >> + return SCSI_MLQUEUE_HOST_BUSY; >> + } > >Absolutely wrong. Either you execute done() on the command and return >zero, or you *don't* execute done on the command and return a queueing >condition. Doing both will lead to double completions and really >horrible things. I'll return zero like the previous error condition, thanks. > ...wrong... Other corrections greatly appreciated and I'll roll into next patch. --Greg - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html