Subject: Re: wd, disk write cache, sync cache, and softdep.
To: Bill Studenmund <wrstuden@netbsd.org>
From: Eric Haszlakiewicz <erh@jodi.nimenees.com>
List: tech-kern
Date: 12/17/2004 13:56:46
On Fri, Dec 17, 2004 at 10:48:09AM -0800, Bill Studenmund wrote:
> On Fri, Dec 17, 2004 at 01:03:41AM -0600, Eric Haszlakiewicz wrote:
> > 	huh?  I'm not understanding what FUA means then.  I had assumed that
> > setting FUA on a write means "this write must actually be written before
> > this command returns".  I don't see how that enforces an ordering on A1 and
> > A2 if A3 has that set.  
> 
> The code that issues A1 does not issue A2 until A1 is done. i.e. there is 
> some thread waiting for the completion.

	How can it know A1 is done if there's no way to tell the drive to
flush its cache?  A possible timeline I see is:

send A1, drive says OK,
send A2, drive says OK,
send A3+FUA, drive writes A3 (due to FUA), drive says OK,
drive writes A2, drive writes A1

eric