Re: BIO_FLUSH on twe driver. Why is it not there?

From: Artem Kuchin <matrix_at_itlegion.ru>
Date: Wed, 31 Oct 2007 21:39:49 +0300
Scott Long wrote:
> Artem Kuchin wrote:
>> 7-BETA1
>> gjournal complained that BIO_FLUSH is not supported by the driver.
>> That is twe driver.
>> However, twe is working via scsi subsystem and the authour of 
>> gjournal said somewhere that he
>> has had implemeneted BIO_FLISH for scsi and he specifically mentioned
>> that he has tested twe and twa and they both support BIO_FLUSH.
>> Then why BIO_FLISH is not supported now?
>> 
> 
> The twe driver does NOT operate under the SCSI subsystem.  As for
> flush semantics in SCSI, they are much better done with ordered tags,
> not explicit SYNC_CACHE commands.  That's not to say that SYNC_CACHE
> won't work (well, except for random devices that will hang with it in
> unpredictable ways, but no one seems to care about that little
> detail). Unfortunately, BIO_ORDERED was removed from the FreeBSD
> block layer several years ago.

How is this possible?

[QUOTE:]
URL:http://unix.derkeiler.com/Mailing-Lists/FreeBSD/current/2006-08/msg00179.html
DATE SOURCE: AUGUST 2006 freebsd-current maillis)
WHO: Pawel Jakub Dawidek 

Unfortunately I'm not able to implement BIO_FLUSH to all out storage
drivers. Currently BIO_FLUSH is supported by ata(4) (/dev/a[dr]X),
da(4) and amr(4).

That's the theory. I'm using standard SCSI commands for this. From the
tests we made it seems that it works ok with twa(4)/twe(4).
I'd still be glad if someone with SCSI/CAM foo could look at the code.
[ENDQUOTE]

So what changed since then?

--
Artem
Received on Wed Oct 31 2007 - 17:54:13 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:20 UTC