From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jamie Lokier Subject: Re: [PATCH 0/17] Make O_SYNC handling use standard syncing path (Version 2) Date: Sat, 22 Aug 2009 17:27:11 +0100 Message-ID: <20090822162711.GA7542@shareable.org> References: <1250875447-15622-1-git-send-email-jack@suse.cz> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: LKML , hch@lst.de, linux-fsdevel@vger.kernel.org To: Jan Kara Return-path: Received: from mail2.shareable.org ([80.68.89.115]:40065 "EHLO mail2.shareable.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932822AbZHVQ1N (ORCPT ); Sat, 22 Aug 2009 12:27:13 -0400 Content-Disposition: inline In-Reply-To: <1250875447-15622-1-git-send-email-jack@suse.cz> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: Jan Kara wrote: > The patch set unifines O_SYNC handling with standard fsync() path. After this, > we have just one place forcing a single file to disk so filesystems like ext3 / > ext4 don't have to force a transaction commit in ext?_file_write for O_SYNC > files / IS_SYNC inodes. The code is also cleaner this way (actually about 150 > lines shorter), we don't sync the inode several times as it happened previously > etc. Afaik, O_SYNC requires just the written data to be committed to disk, but fsync() requires all dirty data for the file (including written by other processes / descriptors) to be committed to disk. So doing the equivalent of fsync() after write might be the wrong thing to do. -- Jamie