From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoph Hellwig Subject: Re: [PATCH] vfs: Merge sync_supers(), sync_filesystems() and sync_blockdevs() Date: Thu, 23 Apr 2009 07:06:57 -0400 Message-ID: <20090423110657.GA4833@infradead.org> References: <1240415781-17834-1-git-send-email-jack@suse.cz> <1240415781-17834-3-git-send-email-jack@suse.cz> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: LKML , linux-fsdevel@vger.kernel.org, Andrew Morton , Jens Axboe To: Jan Kara Return-path: Received: from bombadil.infradead.org ([18.85.46.34]:43768 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753569AbZDWLG6 (ORCPT ); Thu, 23 Apr 2009 07:06:58 -0400 Content-Disposition: inline In-Reply-To: <1240415781-17834-3-git-send-email-jack@suse.cz> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Wed, Apr 22, 2009 at 05:56:21PM +0200, Jan Kara wrote: > These three functions are quite similar so merge them to save superblock list > traversal code. As a bonus we get livelock avoidance for all these superblock > traversals. Also remove the condition that if wait == 0 and sb->s_dirt is > not set, then ->sync_fs() is not called. This does not really make much sence > since s_dirt is generally used by filesystem to mean that ->write_super() needs > to be called. But ->sync_fs() does different things. I even suspect that some > filesystems (btrfs?) sets s_dirt just to fool this logic. Please separate the s_dirt bit out into a small patch, that's something we probably want for -stable, too. Otherwise the patch looks reasonable.