From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id D6327C4332F for ; Wed, 16 Nov 2022 19:49:53 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 140C06B0071; Wed, 16 Nov 2022 14:49:53 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0F0FB6B0073; Wed, 16 Nov 2022 14:49:53 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F21DA6B0074; Wed, 16 Nov 2022 14:49:52 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id E26A46B0071 for ; Wed, 16 Nov 2022 14:49:52 -0500 (EST) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id A64008048B for ; Wed, 16 Nov 2022 19:49:52 +0000 (UTC) X-FDA: 80140345824.19.0D5106A Received: from mail-yb1-f174.google.com (mail-yb1-f174.google.com [209.85.219.174]) by imf19.hostedemail.com (Postfix) with ESMTP id 6715B1A000F for ; Wed, 16 Nov 2022 19:49:52 +0000 (UTC) Received: by mail-yb1-f174.google.com with SMTP id 205so7772578ybe.7 for ; Wed, 16 Nov 2022 11:49:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=PLk5Bv9pyzmOmKmpiRdrbFX7MTtlMoGgKbcUXnSuZlI=; b=Mr/rVM5gWvDOXLWlos1ler/CMAMfiIgz4Sml3kFSyjECZnlSPcVBU4y3VfCTu/0aDq 2Hx+c24+SP+0/wnV2C0+rZ0YnJMzkJqQZ07KplG/jYFNeJ/AdVuTulsQOta/yskYT4co lO+DYR3t4HZuIy39N3Pc5nd7f8R7UyAmkEcYR6dxKgZ3kO04wSNctDpA5HdAa/nF2Np5 iI7sEspYjGhADXPrJaY9jmcKzsMSJwcbVqjhbJhW4py4F4S/B3LAslAjpOlTFVcsVoxC FpqtJGeWYIq5qmN19F7mWs1i+OrcK1voWBxuSePpcTDigFfWwQtwggtf/qd5BZtGSYBH 2NxA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=PLk5Bv9pyzmOmKmpiRdrbFX7MTtlMoGgKbcUXnSuZlI=; b=0BCkYJ/OO2swMe13LMlefSC88z2YebXv9QkZhD4xf4BaguSg/8kbrgFrVfTYAu1A5O 9kURUMjnJ6mepGsviT4rXa51kGily6ekeUqt5rGYPOfb4fQx8EoMC7r7AQxHlPtJ7Uw3 IAeREwaofBAxM6pBCAvgBsHxqf0CHsRZTa5FBPNf3LcSy0uFGK2NNMM43UFiTdeqEBAe YZrs8lyWSO2uMTUoYyoq8wMiFlsuSrtYcVswpd2ENcYtIu/yjZNc1U41bNqEGpaaj/N/ KxfF7vYzQ99jIkMG6iMb1WjF6SLQvhiNlm7/YxwthHiQM2VpGFgMPRzbmhGqs2n1PWUk kPBQ== X-Gm-Message-State: ANoB5pkGQgPmNw95VIhXJcXszcpZ7wB72NTymbENmFcIaG4NelosoLHA y3mDORdrt6f+NUVAA36BW/L5bivpaohsIqaiDJg= X-Google-Smtp-Source: AA0mqf6Yj2bGl28yKEI97oe+OajLC3QX2soh79yTZPgp6unUy7vmMfUDtsTI6pyxXekCj6K0TeOICP3O9Xan+y3YZu4= X-Received: by 2002:a25:248a:0:b0:6e6:aa56:f59 with SMTP id k132-20020a25248a000000b006e6aa560f59mr1021192ybk.595.1668628191611; Wed, 16 Nov 2022 11:49:51 -0800 (PST) MIME-Version: 1.0 References: <20221116021011.54164-1-vishal.moola@gmail.com> <20221116021011.54164-2-vishal.moola@gmail.com> In-Reply-To: From: Vishal Moola Date: Wed, 16 Nov 2022 11:49:40 -0800 Message-ID: Subject: Re: [PATCH 1/4] ext4: Convert move_extent_per_page() to use folios To: Matthew Wilcox Cc: linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-ext4@vger.kernel.org, akpm@linux-foundation.org, naoya.horiguchi@nec.com, tytso@mit.edu Content-Type: text/plain; charset="UTF-8" ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1668628192; a=rsa-sha256; cv=none; b=lu8bmRd4KK4umFMH+Pg8hLrFbgGIr2SSUY3bsBjX5B3/7+xmuzTTvKCPapcLBXDxD1IwIG 6fJlq6Sw5xZlpySdV15xIPuOjTdqrQ68vW6QoVqjFcazRRh9gDB3nZffOusuFdX9CFq1t7 gMdBgtqf03tIvTlGrmI1LFElElYkF1o= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b="Mr/rVM5g"; spf=pass (imf19.hostedemail.com: domain of vishal.moola@gmail.com designates 209.85.219.174 as permitted sender) smtp.mailfrom=vishal.moola@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1668628192; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=PLk5Bv9pyzmOmKmpiRdrbFX7MTtlMoGgKbcUXnSuZlI=; b=8irrSwK/6JyQAmn3hWRZBPmPPPCVbqMobrKfvyBiLdgLe0jCCmYXcNv5vEYhpyKpWWZR57 DXM44vcf6lMk/UcVPkRskIGlqDDZtDxVSD65qEAI2DGmm69BXw/OxkzQ0/xop6zK2dKa61 NrqNjqirrNivwXidXxzRKpsb4vinF9o= X-Rspam-User: X-Stat-Signature: pkdizepicass5q6bjbp8a8tdcatnhxxp X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 6715B1A000F Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b="Mr/rVM5g"; spf=pass (imf19.hostedemail.com: domain of vishal.moola@gmail.com designates 209.85.219.174 as permitted sender) smtp.mailfrom=vishal.moola@gmail.com; dmarc=pass (policy=none) header.from=gmail.com X-HE-Tag: 1668628192-363343 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Wed, Nov 16, 2022 at 12:09 AM Matthew Wilcox wrote: > > On Tue, Nov 15, 2022 at 06:10:08PM -0800, Vishal Moola (Oracle) wrote: > > { > > struct inode *orig_inode = file_inode(o_filp); > > struct page *pagep[2] = {NULL, NULL}; > > + struct folio *folio[2] = {NULL, NULL}; > > I have a feeling that mext_page_double_lock() should also be converted > to use folios. But this makes me nervous: > > int blocks_per_page = PAGE_SIZE >> orig_inode->i_blkbits; > > and I'm not sure what will happen if one or both of the orig_page > and donor_page is large -- possibly different sizes of large. > > Obviously ext4 doesn't allow large folios today, but it would be good to > get some reasoning about why this isn't laying a trap for later (or at > least assertions that neither folio is large so that there's an obvious > scream instead of silent data corruption). I had thought once mext_page_mkuptodate() and block_commit_write() were converted to folios, large folios wouldn't be a problem. I hadn't considered that the folios may be of different sizes. I can add assertions about both folios being large and the same size in v2.