BIO_FLUSH and ips(4)
Xin LI
delphij at gmail.com
Sun Apr 25 05:39:35 UTC 2010
Hi,
On Sat, Apr 24, 2010 at 8:20 PM, YONETANI Tomokazu <qhwt+fbsd at les.ath.cx> wrote:
> Hello.
>
> The ServeRAID driver, or ips(4), seems to distinguish read or write requests
> with a macro called ips_read_request(), which is defined as
>
> #define ips_read_request(iobuf) ((iobuf)->bio_cmd == BIO_READ)
>
> in its strategy routine and a few other places. So when the request is
> BIO_FLUSH, the ips driver issues a write command (IPS_WRITE_CMD) with
> length == 0, right?
>
> My question is, do ServeRAID controllers treat 0-byte write command
> as a sync-to-disk request, or is there any command for that purpose?
> There's a command called IPS_CACHE_FLUSH_CMD defined in ipsreg.h,
> but it's not used anywhere in the normal code path.
It seems Linux driver is using it (on shutdown/reset) but I'm not sure
if this would have some side effect, etc.?
Cheers,
--
Xin LI <delphij at delphij.net> http://www.delphij.net
More information about the freebsd-hackers
mailing list