Re: Regarding ordered-tag support.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jeff Garzik wrote:
James Bottomley wrote:

I suppose I'm a broken record, but I really think linked tasks are the
better way to enforce the required ordering guarantees for SCSI TCQ.
The problem being that this would present a slightly different API at
the block level (you have individual writes that are now ordered, not
wholesale barriers).

I strongly agree, since fundamentally, linked tasks is what is really going on.

Hello, James.  Hello, Jeff.

Maybe I have misunderstood, but, AFAICS, linked task doesn't assure any ordering relation with respect to other tasks unlike ordered tag. So, it doesn't make much difference compared to simple & stupid ordering by draining. For a barrier to work, the following order should be kept.

pre-barrier writes -> cache flush -> barrier write (FUA) -> other writes

Issuing cache flush and barrier write with ordered tags accomplishes all the ordering requirements (if it works, that is.). I can see linked task can be used for 'cache flush -> barrier write (FUA)' segment but that leaves us with two unhandled ordering requirements.

Another thing I'm curious about linked task is what advantages linked task has over simply issuing and completing the commands sequentially. Commands in a linked task has to be issued and completed sequentially anyway, so I don't really see the difference.

Thanks.

--
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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux