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 23:55:18
On Fri, Dec 17, 2004 at 05:36:13PM -0800, Bill Studenmund wrote:
> On Fri, Dec 17, 2004 at 01:56:46PM -0600, Eric Haszlakiewicz wrote:
> > 	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:
> 
> You assert FUA for write A1.
> 
> > 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.
> 
> You assert FUA for EACH write.

	um... ok.  so what data do you NOT assert FUA on?

In my rather vague view of what a filesystem might do during some
operation, I was thinking that it will go and write some data, which
isn't entirely critical to get to the platter right away.  Then, some
time later it will write some other piece of data that needs to be
written out right away, but also needs the first piece to be already
permanently stored.  Like say an inode for piece one, and the directory
newly referring to the inode for piece two.

eric