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 3BD6DC4828D for ; Sat, 3 Feb 2024 07:12:07 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 562AB6B006E; Sat, 3 Feb 2024 02:12:06 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 512B66B0071; Sat, 3 Feb 2024 02:12:06 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 400996B0072; Sat, 3 Feb 2024 02:12:06 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 310CE6B006E for ; Sat, 3 Feb 2024 02:12:06 -0500 (EST) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id D3E451402FE for ; Sat, 3 Feb 2024 07:12:04 +0000 (UTC) X-FDA: 81749623368.26.23C4E7C Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) by imf22.hostedemail.com (Postfix) with ESMTP id 73729C0014 for ; Sat, 3 Feb 2024 07:12:02 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=Hfk1jOB6; spf=none (imf22.hostedemail.com: domain of BATV+a0ed29cff9639d748e7e+7468+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+a0ed29cff9639d748e7e+7468+infradead.org+hch@bombadil.srs.infradead.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1706944323; a=rsa-sha256; cv=none; b=7uY4C7LNKonPPI/6VfOhHDo68tTXovv1qNivVtb7jTcp46CewVm/GeF4Huag5QTTPSgbtF 8O071thlvJtNAb9PJIuMrP9IwXY6RDvmwQjywHQukfX9bHR27azSy3/d0nXU7USKZL5Kz5 8X6BOiY4ibEyP/iJ1zje1zavo9btTJU= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=Hfk1jOB6; spf=none (imf22.hostedemail.com: domain of BATV+a0ed29cff9639d748e7e+7468+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+a0ed29cff9639d748e7e+7468+infradead.org+hch@bombadil.srs.infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1706944323; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=HMBNnp3fgBDK6ztw/NO3s+iVnQcpEAV34TJMhHGz7lI=; b=aqihQ68mhSTeFK+KPVni6pOeuaf2nfVIBucxTZy6CgEIv19Zqyyd/GrCNiMWElTPv3rjij RXn7rQ0+NBVbnoW2tZ0v6mvSRhQNmH3Ll/M51nCJsle0xwHG6mq7C68bbakLpqHW0Q4zfv m6CUrkJv109NvRZNAoucEd32M5ih+l8= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: MIME-Version:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type: Content-ID:Content-Description:In-Reply-To:References; bh=HMBNnp3fgBDK6ztw/NO3s+iVnQcpEAV34TJMhHGz7lI=; b=Hfk1jOB6JsmsKp3tLeYrYuZOXy AayejwfIhn+MYGLWoPY2CdSef9mFapvkWNacoc7Rc9QLlNPfjrpcB9HUMYMlRG5YgwX2Apt8dzL3i Xw72vGE+8770V5or/kmoGOWXqDf+DXrRg8z75QB4pTc2FpV6phLf0yYPHlLstv6fYZTjqtmyAIouD 07FCNuwksuY9zDDjYG8iD2ldZJhr9POZKriEsRotD8evbA9ivqmxN8qt+tih1wb9gjQKExRb5oo7U RESHqP+TPhdaALhK5CV/Yflm88j+YnlinUZXseBUAEUOCMrd2B7EsVm8PqMa6yl8S4CgEqJFGJNd/ cYpziPdA==; Received: from [89.144.222.32] (helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.97.1 #2 (Red Hat Linux)) id 1rWABz-0000000FjxC-1WUq; Sat, 03 Feb 2024 07:12:00 +0000 From: Christoph Hellwig To: linux-mm@kvack.org Cc: Matthew Wilcox , Jan Kara , David Howells , Brian Foster , Christian Brauner , "Darrick J. Wong" , linux-xfs@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: convert write_cache_pages() to an iterator v6 Date: Sat, 3 Feb 2024 08:11:34 +0100 Message-Id: <20240203071147.862076-1-hch@lst.de> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 73729C0014 X-Stat-Signature: czbpiyxic7b1tfcs96ebbcf7t4z4hni4 X-Rspam-User: X-HE-Tag: 1706944322-187386 X-HE-Meta: U2FsdGVkX19E1Fx9LGNLmaMncSEN5+xDpUSqTKNbJ0y5J1E4mrQKBlU5MwrWjrXl8LFXxr6wjdoli26pkObjUwRH9vg/VtxK7dnyOGeBLSPFD0cBnKYm1WoBQ2B0RwTOF9PTJ0lM1FodB9l1jAE+Q4rIcqqnE+JHye8jqQAh+/HBengUkUV3s5lbRtFxwvR3WqTmRM7lZMVWhN1COyr7zZ6K0lbDEE2yFrm3zl4PSVa3sYIvfToI0SwFNcp1FtiqJy9JPpRYWKINQBHkTRlt662tCEtjr0KFj7Z4d7rPM5E2BNx+teglo06pMDdK57V41Et2dTEFRNVmWNsQYz4SRW53xuWvZFE+yiFDmHH52opSolfJK4dAQnkdcenRxByL3/wnT6IGDQpa3A0Q1ozVanA4I11RMQnkIiG+IN4NILnVbctsuzwizlc8T46tEIG1ZNWcp6KpkaOUXbVfwqW1W7jpGRmhaEaiERFxbRi4hzCcML8LcD7pjX60fWOmJ+ZXRNZJwhNvmNwCOT732NKhXGvOHGRoKysLnr8pyWtkEfx6G2wngjnYtGtHzU+HZhQolE/sXLKpZCbWFHykmSwbGCG4qsxP5pxUC9AaLC85qvHjKcGDbVhj5ufABYojxxKsCbtXipedL3+PdLnVeqBUilSIk5AwcVkFonI1R+S6n+QbN/WWenhqT27yie4pgom4tyGpVUulckqtRpEy7dOr0Bk1TH2l3AgcgveeLTbx7g2+RaTCfsVarD18fg5kZ9x1iljovHBL21sh2XIWZI+V6/dpOMb+mRLVNL39UU7a/1683kzpdr1xH4/W0EgAfO119ld6mmypXRxx+wdk7veL7bODI6dEXJPTXpB6KrFCk/MWQNer4f3HS5lmvAFv50DSywPVkTkfzj6Jz4J9/yyda9gg3BwJ67IQALZDOB+AaiJ+8/XcwoFTgeRt4CvQNnPge6IGtMpt9Pxn/CAZtJQ Zm09RUvJ 8zT+8I2Iw/ck7ieI6OozMvfk+LHCaaYNrIRHNLNEB5QmXnz/CQTpKlkKMwAyZ2mCjMw/6hho5rJzk4i6e/dNMkPr9tPCbbnmZiqFe5Sr8c6QEvdky1XdXMqKh0qE4pDXy7VJ9XmXI4/41fcjOqGDMrCIV2Qp0n5qGpyqKc3se3CZEqFbUN8KSYA3t6SgJ9aS6YRDao7hEYc3uni6+zLe234Nykr2+ziHUize1DR7Htfel06T08nY5XxEzSlGtFhpX5aYgIdov+EdoGSedmP6KvKw3dOVqy+8p26VYH1YI2NIRRoKSNTL46a0GFJNalEPNd7OPUDEUXEU2hh5hZi9VVZX8Mvp5PDI9ePhghW3BHU0lM9mRsXqdHq/ItsBIKt7MUNeFyTKwtslM/tnx0cN1+Fx4mSxPReoxONOvPSBUQ3epssqAleby1AiqVg== 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: List-Subscribe: List-Unsubscribe: Hi all, this is an evolution of the series Matthew Wilcox originally sent in June 2023, which has changed quite a bit since and now has a while based iterator. Note that in this version two patches are so different from the previous version that I've not kept any Reviews or Acks for them, even if the final result look almost the same as the previous patches with the incremental patch on the list. Changes since v5: - completely reshuffle the series to directly prepare for the writeback_iter() style. - don't require *error to be initialized on first call - improve various comments - fix a bisection hazard where write_cache_pages don't return delayed error for a few commits - fix a whitespace error - drop the iomap patch again for now as the iomap map multiple blocks series isn't in mainline yet Changes since v4: - added back the (rebased) iomap conversion now that the conflict is in mainline - add a new patch to change the iterator Changes since v3: - various commit log spelling fixes - remove a statement from a commit log that isn't true any more with the changes in v3 - rename a function - merge two helpers Diffstat: fs/iomap/buffered-io.c | 10 - include/linux/pagevec.h | 18 ++ include/linux/writeback.h | 12 + mm/page-writeback.c | 344 ++++++++++++++++++++++++++-------------------- 4 files changed, 231 insertions(+), 153 deletions(-)