Re: O_SYNC behavior?

Ray Van Dolson
2010-04-27T15:33:15Z

On Tue, Apr 27, 2010 at 07:12:05AM -0700, Christoph Hellwig wrote:
> On Tue, Apr 27, 2010 at 11:32:50AM +0200, Matthias Schniedermeyer wrote:
> > I don't think that answers the intented question.
> >
> > I guess the correct answer is:
> > It depends on the server-side configuration.
> > An "async" export gets the "done"-answer immediatly.
> > An "sync" export (only when also mounted "sync" AFAIU) waits at least
> > until the write command is send down the stack, maybe even until the
> > data actually hit the platters or silicon in the SSD-case.
> >
> > man 5 exports:
> > - snip -
> > sync: Reply to requests only after the changes have been committed to stable storage
> > - snip -
> >
> > But i guess the performance will be horrible when both side are "sync".
>
> The client side (that is mount-side) sync means implying O_SYNC for all
> I/O - no need for that. And sync exports are the default for every sane
> server.
>

Thanks guys. I was asking this from the perspective of a ZFS type
setup with its intent log (ZIL) on SSD's or some battery backed NVRAM.

In this setup, with sync mode NFS, acknowledgement is sent to the
client as soon as the data is written to the ZIL -- before it actually
hits the underlying disks.

Just was trying to determine a way to mirror this setup with XFS.

Thanks,
Ray