James Bottomley wrote: > On Thu, 2006-02-09 at 01:57 +0900, Tejun wrote: > >>I intentionally wrote 'driver' because if a SCSI device determines that >>it's busy, it would report via CHECK CONDITION. Depending on QErr, the >>whole task set will be terminated, and such case falls into EH >>requeueing case (would require changes in scsi_softirq though). > > No, it wouldn't. BUSY is a SPI Message (deprecated on non-SPI > transports) and QUEUE_FULL is a status return. The device is entitled > to think of the transaction as logically complete (and not impacting > error recovery) after either of these returns. I see. I'll dig docs. >>>You're making the assumption that you can set QErr... It's under device control. >> >>Was it ro field? Didn't know that. I will check it tomorrow. If a >>device doesn't abort whole taskset, we just can't use ordered-tag for >>barriers. > > > His point is that it's a field in the mode page of a device. Some > devices only have read only mode pages ... still more may not act on > this field correctly even if set. Basically it's opening a can of > worms. Yeah, I kind of doubt whether hardware vendors would implement and test all the options and features whene I read SCSI specs. Considering how many ATA drives have faulty firmware... Anyways, it seems ordered-tag support should be left alone for the time being. Sad. :-( Thanks a lot. -- tejun - : 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