From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DA17DB658; Thu, 23 Nov 2023 04:09:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="UW2DeccM" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 53C3DC433C7; Thu, 23 Nov 2023 04:09:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1700712585; bh=Bw7Y1tSIteesdKurZaVVowFevEIWL8qOrFUxj6OO8og=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=UW2DeccMXA1iij26Yvi2JJnQj5PBKI4wUmc+Wo2TqjqLkSTAJoR9Xnh56yOjNDZN1 kXuurynouJxCJRhg94PSRMJdC5nXhEG6iJ3608NPf+AoB5ylVojn4K94dbMpMj/o0V ghyjBNb6DTKFnEAzZ+bBw9tU+guIl60Kn8DtuBRX3Jdrgf43S2tJt+OzfcJBb0T7Ol MTGngPb+MluhGMf7JsdUtaLqvrK75cpC/lKjxqjhTUOkqE5LjbRC3MDVcih+envSuW IlmR34h9evh8tH3YDmPy+MAld+VjlmlN23EXw8yhbtdHpJOhiBepNm6hRnbyEApgRE wfF6tK92eg/pg== Date: Wed, 22 Nov 2023 20:09:44 -0800 From: "Darrick J. Wong" To: Dave Chinner Cc: Christoph Hellwig , Jan Kara , "Ritesh Harjani (IBM)" , linux-ext4@vger.kernel.org, linux-fsdevel@vger.kernel.org Subject: Re: [RFC 2/3] ext2: Convert ext2 regular file buffered I/O to use iomap Message-ID: <20231123040944.GB36168@frogsfrogsfrogs> References: <20231122122946.wg3jqvem6fkg3tgw@quack3> Precedence: bulk X-Mailing-List: linux-ext4@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Thu, Nov 23, 2023 at 09:26:44AM +1100, Dave Chinner wrote: > On Wed, Nov 22, 2023 at 05:11:18AM -0800, Christoph Hellwig wrote: > > On Wed, Nov 22, 2023 at 01:29:46PM +0100, Jan Kara wrote: > > > writeback bit set. XFS plays the revalidation sequence counter games > > > because of this so we'd have to do something similar for ext2. Not that I'd > > > care as much about ext2 writeback performance but it should not be that > > > hard and we'll definitely need some similar solution for ext4 anyway. Can > > > you give that a try (as a followup "performance improvement" patch). > > > > Darrick has mentioned that he is looking into lifting more of the > > validation sequence counter validation into iomap. > > I think that was me, as part of aligning the writeback path with > the ->iomap_valid() checks in the write path after we lock the folio > we instantiated for the write. > > It's basically the same thing - once we have a locked folio, we have > to check that the cached iomap is still valid before we use it for > anything. > > I need to find the time to get back to that, though. Heh, we probably both have been chatting with willy on and off about iomap. The particular idea I had is to add a u64 counter to address_space that we can bump in the same places where we bump xfs_inode_fork::if_seq right now.. ->iomap_begin would sample this address_space::i_mappingseq counter (with locks held), and now buffered writes and writeback can check iomap::mappingseq == address_space::i_mappingseq to decide if it's time to revalidate. Anyway, I'll have time to go play with that (and further purging of function pointers) next week or whenever is "after I put out v28 of online repair". ATM I have a rewrite of log intent recovery cooking too, but that's going to need at least a week or two of recoveryloop testing before I put that on the list. --D > -Dave. > -- > Dave Chinner > david@fromorbit.com >