Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S261947AbUCSUWt (ORCPT ); Fri, 19 Mar 2004 15:22:49 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S261959AbUCSUWt (ORCPT ); Fri, 19 Mar 2004 15:22:49 -0500 Received: from ns.suse.de ([195.135.220.2]:14508 "EHLO Cantor.suse.de") by vger.kernel.org with ESMTP id S261947AbUCSUVs (ORCPT ); Fri, 19 Mar 2004 15:21:48 -0500 Subject: Re: True fsync() in Linux (on IDE) From: Chris Mason To: Peter Zaitsev Cc: Hans Reiser , Jens Axboe , Linux Kernel In-Reply-To: <1079724411.2576.178.camel@abyss.local> References: <1079572101.2748.711.camel@abyss.local> <20040318064757.GA1072@suse.de> <1079639060.3102.282.camel@abyss.local> <20040318194745.GA2314@suse.de> <1079640699.11062.1.camel@watt.suse.com> <1079641026.2447.327.camel@abyss.local> <1079642001.11057.7.camel@watt.suse.com> <1079642801.2447.369.camel@abyss.local> <1079643740.11057.16.camel@watt.suse.com> <1079644190.2450.405.camel@abyss.local> <1079644743.11055.26.camel@watt.suse.com> <405AA9D9.40109@namesys.com> <1079704347.11057.130.camel@watt.suse.com> <1079724411.2576.178.camel@abyss.local> Content-Type: text/plain Message-Id: <1079727833.11062.200.camel@watt.suse.com> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.5 Date: Fri, 19 Mar 2004 15:23:53 -0500 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2042 Lines: 59 On Fri, 2004-03-19 at 14:26, Peter Zaitsev wrote: > On Fri, 2004-03-19 at 05:52, Chris Mason wrote: > > > > I am listening to Peter, Jens and I have spent a significant amount of > > time on this code. We can go back and spend many more hours testing and > > debugging the 2.4 changes, or we can go forward with a very nice > > solution in 2.6. > > > > I'm planning on going forward with 2.6 > > Chris, Hans > > It is great to hear this is going to be fixed in 2.6, however it is > quite a pity we have a real mess with this in 2.4 series. > It is indeed. > Resuming what I've heard so far it looks like it depends on: > > - If it is fsync/O_SYNC or O_DIRECT (which user would expect to have > the same effect in this respect. > - It depends on kernel version. Some vendors have some fixes, while > others do not have them. > - It depends on hardware - if it has write cache on or off > - It depends on type of write (if it changes mata data or not) > - Finally it depends on file system and even journal mount options > All of the above is correct. > Just curious does at least Asynchronous IO have the same behavior as > standard IO ? > For the suse patch, yes. If it triggers a commit, you get a cache flush. > > All of these makes it extremely hard to explain what do users need in > order to get durability for their changes, while preserving performance. > > Furthermore as it was broken for years I expect we'll have people which > developed things with fast fsync() in mind, who would start screaming > once we have real fsync() > > (see my mail about Apple actually disabling cache flush on fsync() due > to this reason) These are all difficult issues. I wish I had easier answers for you, hopefully we can get it all nailed down in 2.6 for starters. -chris - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/