Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 25 Apr 2010 12:20:48 +0900
From:      YONETANI Tomokazu <qhwt+fbsd@les.ath.cx>
To:        freebsd-hackers@freebsd.org
Subject:   BIO_FLUSH and ips(4)
Message-ID:  <20100425032047.GA89136@les.ath.cx>

next in thread | raw e-mail | index | archive | help
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.

Best regards,
YONETANI Tomokazu.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100425032047.GA89136>