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 767ACC5AD49 for ; Thu, 29 May 2025 11:34:25 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 07CD46B014A; Thu, 29 May 2025 07:34:25 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 02BF36B014C; Thu, 29 May 2025 07:34:24 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E36636B014B; Thu, 29 May 2025 07:34:24 -0400 (EDT) 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 C18986B0148 for ; Thu, 29 May 2025 07:34:24 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 74CBB140135 for ; Thu, 29 May 2025 11:34:24 +0000 (UTC) X-FDA: 83495737248.08.BE2BF09 Received: from mailout2.samsung.com (mailout2.samsung.com [203.254.224.25]) by imf10.hostedemail.com (Postfix) with ESMTP id 76017C001B for ; Thu, 29 May 2025 11:34:21 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=samsung.com header.s=mail20170921 header.b=tFtPmU0B; spf=pass (imf10.hostedemail.com: domain of kundan.kumar@samsung.com designates 203.254.224.25 as permitted sender) smtp.mailfrom=kundan.kumar@samsung.com; dmarc=pass (policy=none) header.from=samsung.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1748518462; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=cE4aGrMWfdfKbV5mbcWv7IOIJ9zK97xR7MCGDQSOGKk=; b=SAgQdK1hcz5AJfTrN4DmMn2dgH6rPiu0j9rGVXwqOlhHjxCbzjdWjyXKsjMuOUvcZJgEfT BGWkAn4IxVmuCCyPtfHSfGVjItOByF+IhUNx1E0MHynwLgSfQkEHPxv3HOFbYwKJRIOjkG aEyOmmIazzIc0JZXXTXr9ccCtt+xkhw= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=samsung.com header.s=mail20170921 header.b=tFtPmU0B; spf=pass (imf10.hostedemail.com: domain of kundan.kumar@samsung.com designates 203.254.224.25 as permitted sender) smtp.mailfrom=kundan.kumar@samsung.com; dmarc=pass (policy=none) header.from=samsung.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1748518462; a=rsa-sha256; cv=none; b=SBN7V7mgp2aM3+OIhJJETT57m5EmNeOzaLom/0ph6caybn+OFp1yn12rRLnCWG3iusQ2LO HFNhbL6zwJhAOZCdEML1Jk/o8Nn/Ch9c1utizgnnGbmqPv3/IfRDlgvrfHQqkyn5LjXUOn YsmIAg/YnifYw1ao3vV+TBZchaYdUJo= Received: from epcas5p1.samsung.com (unknown [182.195.41.39]) by mailout2.samsung.com (KnoxPortal) with ESMTP id 20250529113415epoutp02e95d9a74f7327baa1258852987a5ee11~D-EWJwGcF2189921899epoutp02b for ; Thu, 29 May 2025 11:34:15 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.samsung.com 20250529113415epoutp02e95d9a74f7327baa1258852987a5ee11~D-EWJwGcF2189921899epoutp02b DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1748518455; bh=cE4aGrMWfdfKbV5mbcWv7IOIJ9zK97xR7MCGDQSOGKk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tFtPmU0Bn1ZfZg/VD60uWi95I1F4erhcqAFuYjrRHyE/Cgj3GGc/hQi2z0Jazo9fF ExcqehmxWgUTTvgYFdEl79TdDazDGxSvOKZmGPsouHwjsaE+HzHUMyEZ2Wwcf6CG98 MY+fRCZQTCxfBcjn5X528+Vh5TLSR/8OBXwm2m/E= Received: from epsnrtp03.localdomain (unknown [182.195.42.155]) by epcas5p1.samsung.com (KnoxPortal) with ESMTPS id 20250529113415epcas5p13c210c73fcbcff52dcc7bb93f4f01f1b~D-EVoaqUQ0281002810epcas5p1n; Thu, 29 May 2025 11:34:15 +0000 (GMT) Received: from epcas5p3.samsung.com (unknown [182.195.38.176]) by epsnrtp03.localdomain (Postfix) with ESMTP id 4b7PQs6NQsz3hhT4; Thu, 29 May 2025 11:34:13 +0000 (GMT) Received: from epsmtrp2.samsung.com (unknown [182.195.40.14]) by epcas5p3.samsung.com (KnoxPortal) with ESMTPA id 20250529113306epcas5p3d10606ae4ea7c3491e93bde9ae408c9f~D-DVj9Ciy0439204392epcas5p3B; Thu, 29 May 2025 11:33:06 +0000 (GMT) Received: from epsmgms1p1new.samsung.com (unknown [182.195.42.41]) by epsmtrp2.samsung.com (KnoxPortal) with ESMTP id 20250529113306epsmtrp271b91974fef11311e14c484c1a067438~D-DVZrJFM3201832018epsmtrp2_; Thu, 29 May 2025 11:33:06 +0000 (GMT) X-AuditID: b6c32a29-566fe7000000223e-ae-683845f23ae6 Received: from epsmtip2.samsung.com ( [182.195.34.31]) by epsmgms1p1new.samsung.com (Symantec Messaging Gateway) with SMTP id 62.F0.08766.2F548386; Thu, 29 May 2025 20:33:06 +0900 (KST) Received: from localhost.localdomain (unknown [107.99.41.245]) by epsmtip2.samsung.com (KnoxPortal) with ESMTPA id 20250529113302epsmtip2ad463f8678ba29c64da9a5eb397e2892~D-DRiEkXT2424224242epsmtip2B; Thu, 29 May 2025 11:33:02 +0000 (GMT) From: Kundan Kumar To: jaegeuk@kernel.org, chao@kernel.org, viro@zeniv.linux.org.uk, brauner@kernel.org, jack@suse.cz, miklos@szeredi.hu, agruenba@redhat.com, trondmy@kernel.org, anna@kernel.org, akpm@linux-foundation.org, willy@infradead.org, mcgrof@kernel.org, clm@meta.com, david@fromorbit.com, amir73il@gmail.com, axboe@kernel.dk, hch@lst.de, ritesh.list@gmail.com, djwong@kernel.org, dave@stgolabs.net, p.raghav@samsung.com, da.gomez@samsung.com Cc: linux-f2fs-devel@lists.sourceforge.net, linux-fsdevel@vger.kernel.org, gfs2@lists.linux.dev, linux-nfs@vger.kernel.org, linux-mm@kvack.org, gost.dev@samsung.com, Kundan Kumar , Anuj Gupta Subject: [PATCH 12/13] nfs: add support in nfs to handle multiple writeback contexts Date: Thu, 29 May 2025 16:45:03 +0530 Message-Id: <20250529111504.89912-13-kundan.kumar@samsung.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20250529111504.89912-1-kundan.kumar@samsung.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrJIsWRmVeSWpSXmKPExsWy7bCSvO4nV4sMg7b1whbb1u1mt5izfg2b xYV1qxktWnf+Z7FomvCX2WL13X42i9eHPzFanJ56lsliyyV7i/eXtzFZrL65htFiy7F7jBaX n/BZ7J7+j9Xi5oGdTBYrVx9lspg9vZnJ4sn6WcwWW798ZbW4tMjdYs/ekywW99b8Z7W4cOA0 q8WNCU8ZLZ7t3shs8XlpC7vFwVMd7Baf5gINOf/3OKvF7x9z2BzkPE4tkvDYOesuu8fmFVoe l8+Wemxa1cnmsenTJHaPEzN+s3i82DyT0WP3gs9MHrtvNrB5nLtY4fF+31U2j74tqxg9ps6u 9ziz4Ai7x4ppF5kChKK4bFJSczLLUov07RK4MrYdfcBc8IS34sRS3gbGldxdjJwcEgImEgt+ zGfqYuTiEBLYzShxc+FuRoiEjMTuuztZIWxhiZX/nrNDFH1klJh9+wdzFyMHB5uArsSPplCQ uIjATWaJc2fPgDUwC/xjlNj9SgfEFhYIkTj9fxkbiM0ioCqx5FUDmM0rYCexafIFqGXyEjMv fWcHsTmB4ouWfAWLCwnYSiy9uZYFol5Q4uTMJywQ8+UlmrfOZp7AKDALSWoWktQCRqZVjJKp BcW56bnFhgWGeanlesWJucWleel6yfm5mxjBqUFLcwfj9lUf9A4xMnEwHmKU4GBWEuFtsjfL EOJNSaysSi3Kjy8qzUktPsQozcGiJM4r/qI3RUggPbEkNTs1tSC1CCbLxMEp1cAU633n10k1 d2v/ThdDY8P5q4xkpB0yZ4idC1tVcftNR67buyu3WPe5RzNtWH2tvmW1jP/cy7fellk7b/zm N/PiFW2WLV/d/jVWRe4rFSwrvVsSF6MT/tpXL1qAKXT36vS0SR/Sph6U1Q9aaBNepmItNj9w 6e1Dx9Prvadc7fhve3ZZWWnT1o8BO17x7O/elK9vFn3z2rXtPI27ew3m+1dt/JJjdkezcc+K V3dLdiXe3PnJe4GK6bHOvHsTw82TSrzf9ajsyw1l/NUr8UMq6OvUNPmYKWqqe5luNOxVXCIg tJTpRvyN0xztR2w07daISReu/a90uuxXSdWltcdV7aSWn5ybzObi/t72y8071RuUWIozEg21 mIuKEwHp2L7efAMAAA== X-CMS-MailID: 20250529113306epcas5p3d10606ae4ea7c3491e93bde9ae408c9f X-Msg-Generator: CA Content-Type: text/plain; charset="utf-8" X-Sendblock-Type: REQ_APPROVE CMS-TYPE: 105P cpgsPolicy: CPGSC10-542,Y X-CFilter-Loop: Reflected X-CMS-RootMailID: 20250529113306epcas5p3d10606ae4ea7c3491e93bde9ae408c9f References: <20250529111504.89912-1-kundan.kumar@samsung.com> X-Rspam-User: X-Rspamd-Queue-Id: 76017C001B X-Rspamd-Server: rspam09 X-Stat-Signature: ufm7xw7341c5r1hmm3gwmqs3aox71d6o X-HE-Tag: 1748518461-170174 X-HE-Meta: U2FsdGVkX18d03xDs1CgY2ykUZ4EhFrhCMDU0iUiLXKDliCi3GYVk2i202YtsSooKmZn4wbYwBc6BwAPCNza1qMTBa/k3fsS8Q9crfYYO9nJEl550HkL1Z4frjX2E4/9EqL6gvzsRt3YMEU/r/Xww+YdSjuSSX6qeq/F4MkLzbdkbpFJNbb4tYOPLSqtEydJC6itRRzjt7gKB6+nd6pUnE7GO0PWNKbBBtovIKyrZqW/7Rxeho0ZmggaAt4M+Bpb8bKUFVcxduWNRfSLGCMU9jQT/QybGRqLosDa4Pl9bP+QBmeur53MbCRGDbwYKzH0fKo+bJFfGRrxO6JUruyggPTKIk553+ZBUrs5RzTzAQUEJSgp5KSIzuGRkGwmjofjh8eYzuk6h74e3b9Jf4cuvFx4rjX9z2oocsYq+R1HCPLLy9see4LkUj4pYbGHMYXn53zHSqMDKRgdVmuiqemAPWm7pNjHQ55z7qXl+wuOZEhRY9/DaurDghlPLC3mwgAKUu7iI7tXgCyPU7QKTS/DdwoWEE731zuwF+D84SEvuVo+u0OKNBYlfT9nvFgyUfa7U68Xa853d/QTpazTk2QCxiP7Y8pcCcvJjLSJCye1YiTQkZnEhjUPnXTcd7HmLIXlsTibAoteeU9e7ZgehsuTLDibCs3FacWI7dds0trBdr3oNDwPkuKq4EcISRiYXH0GOhcKA6nE7T56GGYC4thKhI+qbCmup1JsdRmxTYvP/koOKBIjQept/6NQNoEDnOGgLPzy/tWIygOr8d6gm+Gj7RXI++yRy241h9XfTC6e7WYU0phuTePgFL3mLPO8ulsOUVDpXnjnUyTrAMoHvtV+3UwDsdyCBcD59IBcyx8nnlfKt5EHn/QyBzogGgRzgeeGKb1v/UB4t7XmRdz0Z5sc2B0G3DTgEkK4zDjP/8OpMIChZwp0zI9+r3uIUf5ICMFEg+ySKmTsnkJ+2eqQ/4n tR/UTWFF w6k9aCACAyP6ikwMjTUauI4vvlTGJbZMiMIs/6/9v7TVHjmrSrCC1x0GBCRtRWuFWgPvy1pBz7n9JsWuwBaCACOJa+9YfrDm8EQMSRL5r6sSVbOooiIszOmj/QTeCV8Bm99lvpR96YWCF9Ms2AbjZ8UCWcEaC7LefNub+ 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: Fetch writeback context to which an inode is affined. Use it to perform writeback related operations. Signed-off-by: Kundan Kumar Signed-off-by: Anuj Gupta --- fs/nfs/internal.h | 5 +++-- fs/nfs/write.c | 6 +++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/fs/nfs/internal.h b/fs/nfs/internal.h index fd513bf9e875..a7cacaf484c9 100644 --- a/fs/nfs/internal.h +++ b/fs/nfs/internal.h @@ -838,14 +838,15 @@ static inline void nfs_folio_mark_unstable(struct folio *folio, { if (folio && !cinfo->dreq) { struct inode *inode = folio->mapping->host; + struct bdi_writeback_ctx *bdi_wb_ctx = + fetch_bdi_writeback_ctx(inode); long nr = folio_nr_pages(folio); /* This page is really still in write-back - just that the * writeback is happening on the server now. */ node_stat_mod_folio(folio, NR_WRITEBACK, nr); - wb_stat_mod(&inode_to_bdi(inode)->wb_ctx_arr[0]->wb, - WB_WRITEBACK, nr); + wb_stat_mod(&bdi_wb_ctx->wb, WB_WRITEBACK, nr); __mark_inode_dirty(inode, I_DIRTY_DATASYNC); } } diff --git a/fs/nfs/write.c b/fs/nfs/write.c index ec48ec8c2db8..ca0823debce7 100644 --- a/fs/nfs/write.c +++ b/fs/nfs/write.c @@ -932,11 +932,11 @@ static void nfs_folio_clear_commit(struct folio *folio) { if (folio) { long nr = folio_nr_pages(folio); - struct inode *inode = folio->mapping->host; + struct bdi_writeback_ctx *bdi_wb_ctx = + fetch_bdi_writeback_ctx(folio->mapping->host); node_stat_mod_folio(folio, NR_WRITEBACK, -nr); - wb_stat_mod(&inode_to_bdi(inode)->wb_ctx_arr[0]->wb, - WB_WRITEBACK, -nr); + wb_stat_mod(&bdi_wb_ctx->wb, WB_WRITEBACK, -nr); } } -- 2.25.1