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 15C97C4332F for ; Thu, 10 Nov 2022 18:52:03 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7CFF26B0071; Thu, 10 Nov 2022 13:52:03 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 70B486B0072; Thu, 10 Nov 2022 13:52:03 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 584A16B0074; Thu, 10 Nov 2022 13:52:03 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 446066B0071 for ; Thu, 10 Nov 2022 13:52:03 -0500 (EST) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 19A26415BD for ; Thu, 10 Nov 2022 18:52:03 +0000 (UTC) X-FDA: 80118427326.09.40D3229 Received: from mail-yw1-f180.google.com (mail-yw1-f180.google.com [209.85.128.180]) by imf20.hostedemail.com (Postfix) with ESMTP id C28C71C0006 for ; Thu, 10 Nov 2022 18:52:02 +0000 (UTC) Received: by mail-yw1-f180.google.com with SMTP id 00721157ae682-368edbc2c18so23656667b3.13 for ; Thu, 10 Nov 2022 10:52:02 -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=ahiLR+0HYqx9Hj3q85kkyLXkS2RfP6cywR4r1/bj6Ic=; b=BuLNNyZA6RGJSro1aFTVvKQfJXFXyp5VR6864NrwvkzbzqRoktCJVw6N/Doca5qBcu 30j7oqGhfYMC/2wwo+CnxYyRIcfIpMO1i3CANPIDzCZ/35eph3JNnXqbXZVpyVeE6nwC 2rgiZ/WGg8qdiA9Wx3EmD01ybzYII1H7SmMVjyiHJ0HXfk4CMj8BCtPoDkfwrzn3wjsG tMQ34M0n3gr3bNTVHM2h6CnhVhIFHKJD1ZCvcWbyUbhDpvhP6XUbvTgwPEhVyNT1WYj4 2KOVt0eemsENinf1T7NLvlf2zR8Rak8qZXX3U/QTi6IKzLl/llUNyWZD4jBYY5o/Cbo9 gdkA== 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=ahiLR+0HYqx9Hj3q85kkyLXkS2RfP6cywR4r1/bj6Ic=; b=vv82w0rbBHoc7i3ylMQHRs4snBca3AcoIyD8FwHq2ZPURe0Pu3oGo13q4WtS7UmFVD +0pUZk71cdlP7ftUsSVuJXGlIeAh+lsBzkJpgHZeK4DsxTVJnfv9SqfExHrDT0bIGJ9j chXZipSlgBdDDYDn9ekmKRJVJ+/2U+Jl+PsB3Rmu31zmBxAI6e7I8DAJrhYq0LPq8wTi v3EJL58hKOvSYbFD6SlYjK1GYHjORuidnrO0Hir/J5T5WNjY2XEZqYR7i2XxvHMpP/5y XQOt7TxOFX46UGauiTxEEALcBkTXy78wOs52asfwIFjixSZzdKGog5fy2mX6YGQWA7tH PYFA== X-Gm-Message-State: ACrzQf3r9sRHvanf3cwvPYRJWFNn5NAxs04q9/+9jlDQOz8IjBd1p+oU tKIN7M7slnOUOKDAxDtQK8WtcXU9/v8MSoVIvaMGuWEIfuU= X-Google-Smtp-Source: AMsMyM6qbhoDq4EuNlT/sFztZuNh18/AZoQGojI1IWj/9MWKt4lI+zofGQOcHJnd2iNJiiAFP0Po3i1fYNOJTKFQ5/8= X-Received: by 2002:a81:63c6:0:b0:349:37f7:73dd with SMTP id x189-20020a8163c6000000b0034937f773ddmr62868232ywb.368.1668106321899; Thu, 10 Nov 2022 10:52:01 -0800 (PST) MIME-Version: 1.0 References: <20221017202451.4951-1-vishal.moola@gmail.com> <20221017202451.4951-12-vishal.moola@gmail.com> In-Reply-To: From: Vishal Moola Date: Thu, 10 Nov 2022 10:51:50 -0800 Message-ID: Subject: Re: [PATCH v3 11/23] f2fs: Convert f2fs_fsync_node_pages() to use filemap_get_folios_tag() To: linux-fsdevel@vger.kernel.org Cc: linux-afs@lists.infradead.org, linux-kernel@vger.kernel.org, linux-btrfs@vger.kernel.org, ceph-devel@vger.kernel.org, linux-cifs@vger.kernel.org, linux-ext4@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net, cluster-devel@redhat.com, linux-nilfs@vger.kernel.org, linux-mm@kvack.org, jaegeuk@kernel.org, chao@kernel.org Content-Type: text/plain; charset="UTF-8" ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=BuLNNyZA; spf=pass (imf20.hostedemail.com: domain of vishal.moola@gmail.com designates 209.85.128.180 as permitted sender) smtp.mailfrom=vishal.moola@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1668106322; a=rsa-sha256; cv=none; b=niVWOUzZTgpuRRRbEulT/Z+a+N6/0Y/mXwoSTCBC3TKNee0aRCpV5QexXqVP3/E27A2iqC eVg5WAg4ktphdldUT/h9aKQW1o/MrrfaPGsHaBPLZJlm/mmdEK2ZemnVdlFAcoV32qbt1c ytwzaZrSMeFNk+lx4YA4fbmRlPgdB74= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1668106322; 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=ahiLR+0HYqx9Hj3q85kkyLXkS2RfP6cywR4r1/bj6Ic=; b=GB0BJPm06qfnNGm6IBCwHkMjWqWbVGRgZLOCwgit4rFaTRnJS5MaczitGpCOV/vUeQmDV2 fPYAvChGxSrfvp4AM7pqST8PRZQLvv+r5UV3oAm+maIhjtfAJnvgxDWXsi6NUApNOABYoy D+dVvXHK64lzdiUikXxUVXEyyrqQ3ig= X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: C28C71C0006 X-Rspam-User: Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=BuLNNyZA; spf=pass (imf20.hostedemail.com: domain of vishal.moola@gmail.com designates 209.85.128.180 as permitted sender) smtp.mailfrom=vishal.moola@gmail.com; dmarc=pass (policy=none) header.from=gmail.com X-Stat-Signature: ywsxo5uxitzrjeqh93x5j88ci3hsc4n7 X-HE-Tag: 1668106322-769915 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 Mon, Oct 24, 2022 at 12:31 PM Vishal Moola wrote: > > On Mon, Oct 17, 2022 at 1:25 PM Vishal Moola (Oracle) > wrote: > > > > Convert function to use a folio_batch instead of pagevec. This is in > > preparation for the removal of find_get_pages_range_tag(). > > > > Signed-off-by: Vishal Moola (Oracle) > > --- > > fs/f2fs/node.c | 19 ++++++++++--------- > > 1 file changed, 10 insertions(+), 9 deletions(-) > > > > diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c > > index 983572f23896..e8b72336c096 100644 > > --- a/fs/f2fs/node.c > > +++ b/fs/f2fs/node.c > > @@ -1728,12 +1728,12 @@ int f2fs_fsync_node_pages(struct f2fs_sb_info *sbi, struct inode *inode, > > unsigned int *seq_id) > > { > > pgoff_t index; > > - struct pagevec pvec; > > + struct folio_batch fbatch; > > int ret = 0; > > struct page *last_page = NULL; > > bool marked = false; > > nid_t ino = inode->i_ino; > > - int nr_pages; > > + int nr_folios; > > int nwritten = 0; > > > > if (atomic) { > > @@ -1742,20 +1742,21 @@ int f2fs_fsync_node_pages(struct f2fs_sb_info *sbi, struct inode *inode, > > return PTR_ERR_OR_ZERO(last_page); > > } > > retry: > > - pagevec_init(&pvec); > > + folio_batch_init(&fbatch); > > index = 0; > > > > - while ((nr_pages = pagevec_lookup_tag(&pvec, NODE_MAPPING(sbi), &index, > > - PAGECACHE_TAG_DIRTY))) { > > + while ((nr_folios = filemap_get_folios_tag(NODE_MAPPING(sbi), &index, > > + (pgoff_t)-1, PAGECACHE_TAG_DIRTY, > > + &fbatch))) { > > int i; > > > > - for (i = 0; i < nr_pages; i++) { > > - struct page *page = pvec.pages[i]; > > + for (i = 0; i < nr_folios; i++) { > > + struct page *page = &fbatch.folios[i]->page; > > bool submitted = false; > > > > if (unlikely(f2fs_cp_error(sbi))) { > > f2fs_put_page(last_page, 0); > > - pagevec_release(&pvec); > > + folio_batch_release(&fbatch); > > ret = -EIO; > > goto out; > > } > > @@ -1821,7 +1822,7 @@ int f2fs_fsync_node_pages(struct f2fs_sb_info *sbi, struct inode *inode, > > break; > > } > > } > > - pagevec_release(&pvec); > > + folio_batch_release(&fbatch); > > cond_resched(); > > > > if (ret || marked) > > -- > > 2.36.1 > > > > Following up on these f2fs patches (11/23, 12/23, 13/23, 14/23, 15/23, > 16/23). Does anyone have time to review them this week? Chao, thank you for taking a look at some of these patches! If you have time to look over the remaining patches (14, 15, 16) feedback on those would be appreciated as well.