Re: fsync in glib/gio



On Fri, 2009-03-13 at 10:23 +0000, Michael Meeks wrote:
> > With the data=ordered setting in ext3 (the default), any fsync will
> > result in all dirty data being flushed, not just the data in that file.
> > This can be pretty expensive if there is a lot of outstanding I/O.
> 
> 	Sure - on ext3 it's a 'sync()' call effectively, with the added bonus
> that this has a terrible effect on other applications trying to use the
> I/O subsystem to eg. read audio to play your mp3, or swap, or allocate
> memory, or ... ;-)
>
> 	Calling 'fsync' regularly on ext3 will bring your system to a grinding
> halt, quite regularly, cf. my comments on hair-loss etc. Lots of our
> users will be on these systems, and last I checked [ did you poke your
> kernel guys on this ? ] this was not recommended.

Ah, but the recommendations from the "kernel" people involved with ext4
is that "everything that cares about data" should call fsync:

https://bugs.edge.launchpad.net/ubuntu/+source/linux/+bug/317781/comments/54

And this is from the horses mouth. He wrote ext3...

> > However, this is only a problem if such an operation happens often, and
> > file saving is just not that common.
> 
> 	Sure; although amusingly, if it happens often ~enough (say every few
> hundred ms) - then we almost move the OS into a semi-synchronous writes
> mode, and have somewhat less to write each time, and so don't suffer
> multi-second glitches in the I/O subsystem ;-)

Yes, but I'd say the problem here is that we shouldn't be saving every
few hundred ms. Thats total crap on e.g. a SSD, and generally just a bad
idea.

> > It occurs often enought that there were several people in the ubuntu
> > ext4-eats-my-data bug that had it happen to them multiple times.
> 
> 	Nasty indeed, and this is the only solution. I suppose the nutshell of
> my concern is this:
> 
> 	* can we in some (evil or otherwise) way avoid hurting
> 	  desktop performance, interactivity and playback for
> 	  all ext2/3 systems, and still keep ext4 users happy ? :-)

Another yucky thing is that statfs can't tell the difference between
ext3 and ext4. They have the same magic number...

> 	Of course, perhaps I'm just way off / out of date wrt. my dislike of
> fsync, let me hunt down some kernely people for a sane 2nd opinion.

Please do.




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]