Messages in this thread | | | From | Oliver Neukum <> | Subject | Re: [rfc] Ignore Fsync Calls in Laptop_Mode | Date | Mon, 23 May 2011 10:12:06 +0200 |
| |
Am Sonntag, 22. Mai 2011, 02:48:33 schrieb Dave Chinner: > On Fri, May 20, 2011 at 08:01:17AM +0200, D. Jansen wrote: > > On Fri, May 20, 2011 at 5:39 AM, Dave Chinner <david@fromorbit.com> wrote:
> > 1. I thought I (may) make that decision by using laptop mode. > > Laptop mode does not change fsync guarantees, so no, you ar enot > making a decision to throw data away when you select laptop mode.
You do however decide to sync less often, resulting in a potentially larger loss of data.
> > 3. A lib doesn't fix the ordering guarantee problem. > > A properly implemented filesystem will not have ordering problems > just because fsyncs are not issued.
But user space will have this problem. A single task's sequence of write(); fsync(); write(); does give an implicit guarantee of ordering to user space. To keep that guarantee, you need kernel support, because only the kernel can issue the necessary barrier/flush commands. A filesystem is not required to make sure your writes hit the disk in the order you issued them, unless you use fsync, which gives an even larger guarantee, but also implies ordering.
Now you may say that you want full fsync or nothing, but this is a personal preference.
Regards Oliver
| |