Subject: Re: letting userland issue FUA writes
To: Chuck Silvers <firstname.lastname@example.org>
From: Bill Studenmund <email@example.com>
Date: 03/15/2006 07:28:49
Content-Type: text/plain; charset=us-ascii
On Wed, Mar 15, 2006 at 06:47:37AM -0800, Chuck Silvers wrote:
> On Tue, Mar 14, 2006 at 11:03:20PM -0800, Bill Studenmund wrote:
> > On Tue, Mar 14, 2006 at 11:41:53PM -0500, Steven M. Bellovin wrote:
> > > On Tue, 14 Mar 2006 18:35:46 -0800, Bill Studenmund
> > > <wrstuden@NetBSD.org> wrote:
> > >=20
> are you intending this for regular files or raw disk devices or both?
I am interested in regular files, but I probably can be talked into seeing=
about doing it for both.
> > What I really want is to be able to issue some writes with FUA set and=
> > some with FUA cleared.
> > If for instance you are implementing a SCSI device in software (say an=
> > iSCSI target), you do not know before hand if you are going to get FUA-=
> > or FUA-cleared writes.
> > However it probably should be good to have a descriptor-level flag, so=
> > that things like a database can just get FUA for all writes.
> > Such a thing wouldn't be hard, as all writes pile into dofilewrite() an=
> > dofilewritev() now. So they, or vn_write(), could just set the flag if=
> > requested.
> this sounds like direct I/O, which I've talked about before (and which
> I am just getting back to looking at recently ). a new O_DIRECT open flag
> on regular files will mean that the read/write should go directly from
> disk to the application's address space without going through the
> page cache. if the new behaviour you're talking about it just for
> raw disk devices, then we could interpret that flag to mean FUA on
> VCHR vnodes. or are you talking about FUA with regular files?
As above, I'm most interested in regular files.
I'm not sure about O_DIRECT implying FUA. While I can think of apps that=20
want that, I am not sure if if there are or aren't apps that will want=20
O_DIRECT but not care about FUA.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (NetBSD)
-----END PGP SIGNATURE-----