From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from verein.lst.de ([213.95.11.211]:54852 "EHLO newverein.lst.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752066AbeFDMlt (ORCPT ); Mon, 4 Jun 2018 08:41:49 -0400 Date: Mon, 4 Jun 2018 14:48:50 +0200 From: Christoph Hellwig To: Andreas Gruenbacher Cc: cluster-devel@redhat.com, Christoph Hellwig , linux-fsdevel@vger.kernel.org Subject: Re: [PATCH v7 05/12] fs: allow to always dirty inode in __generic_write_end Message-ID: <20180604124850.GA30780@lst.de> References: <20180604123729.23414-1-agruenba@redhat.com> <20180604123729.23414-6-agruenba@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180604123729.23414-6-agruenba@redhat.com> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Mon, Jun 04, 2018 at 02:37:22PM +0200, Andreas Gruenbacher wrote: > @@ -2106,7 +2105,7 @@ int __generic_write_end(struct inode *inode, loff_t pos, unsigned copied, > * ordering of page lock and transaction start for journaling > * filesystems. > */ > - if (i_size_changed) > + if (dirty_inode) > mark_inode_dirty(inode); > return copied; Calling mark_inode_dirty on an already dirty inode is cheap, so how about just calling it directly in your caller that always wants to set the inode dirty?