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 22F53C54FB3 for ; Thu, 29 May 2025 11:34:20 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 66E816B0144; Thu, 29 May 2025 07:34:17 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 61F466B0146; Thu, 29 May 2025 07:34:17 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 510A56B0147; Thu, 29 May 2025 07:34:17 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 27FC86B0144 for ; Thu, 29 May 2025 07:34:17 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id D48CD14013B for ; Thu, 29 May 2025 11:34:16 +0000 (UTC) X-FDA: 83495736912.25.8D98D6C Received: from mailout2.samsung.com (mailout2.samsung.com [203.254.224.25]) by imf23.hostedemail.com (Postfix) with ESMTP id F253A140013 for ; Thu, 29 May 2025 11:34:13 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=samsung.com header.s=mail20170921 header.b=SEPudA+0; spf=pass (imf23.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=1748518454; 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=Zn7Pts0ou2iSXgETzzKNoOTqw7EC8RrgMd0Xe7Ygfcc=; b=eoM2yAU0AnXG0tPCKCzEdqwhJB7uP1jhdwAyuDrGJph3uKmLYlZ15o7Ush4f9d2wEuZ/Kw POqGGHoEEWR/73quXjJ+oPei6EopPz5pLlKw+d5nHB+wnPyN8ir9++z5uUR67axXoH3a+c FBCKQkLyU13pnuCU4l31ISQ7rkyyBbE= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=samsung.com header.s=mail20170921 header.b=SEPudA+0; spf=pass (imf23.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=1748518454; a=rsa-sha256; cv=none; b=Okyo7pT7ksO7QuylIwQkUmArf1sGw9wyQHFKdNSUDYNFpF1T8UAjH07w+b9vTDcFnp81Tk 3NEfaRWiTQ/DJPTe2aqh8G1gJp1NGvIJYEttQyZV6bJfQ7H02yB+rJNrwFU7omVeRA415E F4o6yRlRYO22GhbxIqfCDQEroA+eOI8= Received: from epcas5p3.samsung.com (unknown [182.195.41.41]) by mailout2.samsung.com (KnoxPortal) with ESMTP id 20250529113411epoutp0255f9c4a3fcc920363637f7a060403f88~D-ERsPtVq2407524075epoutp02d for ; Thu, 29 May 2025 11:34:11 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.samsung.com 20250529113411epoutp0255f9c4a3fcc920363637f7a060403f88~D-ERsPtVq2407524075epoutp02d DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1748518451; bh=Zn7Pts0ou2iSXgETzzKNoOTqw7EC8RrgMd0Xe7Ygfcc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=SEPudA+0D06vWELpPkQrq4B1L0GjzwbndNP8ZZwSnFdwoRMksArUgD58PWrONwKsS oeGC5NqX4fa/YviaMkUplhyNbLsArEVm90XS94pVXVVwUeD+MwMp7ynSJWSBIPknDN olk9iXHyECZCls2dtYPyDeTQzeNCqph4f3XmZu6Q= Received: from epsnrtp04.localdomain (unknown [182.195.42.156]) by epcas5p4.samsung.com (KnoxPortal) with ESMTPS id 20250529113410epcas5p479a40e38a740560a53f1518e9dd71db1~D-ERVzu7h2801228012epcas5p4V; Thu, 29 May 2025 11:34:10 +0000 (GMT) Received: from epcas5p2.samsung.com (unknown [182.195.38.175]) by epsnrtp04.localdomain (Postfix) with ESMTP id 4b7PQn3Gnrz6B9m5; Thu, 29 May 2025 11:34:09 +0000 (GMT) Received: from epsmtrp1.samsung.com (unknown [182.195.40.13]) by epcas5p4.samsung.com (KnoxPortal) with ESMTPA id 20250529113257epcas5p4dbaf9c8e2dc362767c8553399632c1ea~D-DNfLdhB2501025010epcas5p4s; Thu, 29 May 2025 11:32:57 +0000 (GMT) Received: from epsmgms1p1new.samsung.com (unknown [182.195.42.41]) by epsmtrp1.samsung.com (KnoxPortal) with ESMTP id 20250529113257epsmtrp107bda94680d50d120a7cbed6884bfd27~D-DNd_opW2108121081epsmtrp1U; Thu, 29 May 2025 11:32:57 +0000 (GMT) X-AuditID: b6c32a29-55afd7000000223e-5b-683845e9c6be Received: from epsmtip2.samsung.com ( [182.195.34.31]) by epsmgms1p1new.samsung.com (Symantec Messaging Gateway) with SMTP id C6.E0.08766.9E548386; Thu, 29 May 2025 20:32:57 +0900 (KST) Received: from localhost.localdomain (unknown [107.99.41.245]) by epsmtip2.samsung.com (KnoxPortal) with ESMTPA id 20250529113253epsmtip27ef7254c0e9880bcb299ee33499ee18e~D-DJpOhM12454924549epsmtip2N; Thu, 29 May 2025 11:32:53 +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 10/13] fuse: add support for multiple writeback contexts in fuse Date: Thu, 29 May 2025 16:45:01 +0530 Message-Id: <20250529111504.89912-11-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: H4sIAAAAAAAAA02Sa0xTZxjHfc+djpqzYuYrLJLVmAWiKF7wZZsw4tiO+oVsMc4bWO0ZJba1 aUHZliirohOBVQWFHpYAQoK0gLaA1iMIxVsFKhYvdIPiBZ3iDFogIxBBCy7x2y//3/95ni8P g8sGiVAmTZvO67UKtZySEI1t8vDFzxORaunI+FLUWCvSqKTOSqGuWgtA2Y4pAhlNb3Bk6fuD Qi/a/AC1F3ZiqN4Tj4a6GzFk8VoBqr/mA6h7YDYST02SyNviwNAZy1UMCacOYGigzoyjhpFR EnnKv0OXmlwE8lmnSNTV0k6iHtMTgJ6K53A0XHmQRq03f6eR/893S269uU6iibES6uv53M1y yDnMfTRnr4rkujszOFv1EYqz+Y/T3I2iCYJ7Zi8GnFg6jHGiN4vi3LczuaHmuxSXX18NuEJh P9dReoXmqk7expJkmyVfKXl12h5evyRuu0T1oL+A1OXOznTm+ukscDw4BwQxkF0B871PiBwg YWSsCGBXkQubEZ9Csc9BznAIPDP5Dz1Teg2gUCDgOYBhKHYxHDNuCORzWC8O3Z0d0wM4Owmg OLgowCFsEhSrrNM5wS6EdfdPEwGWsnHQ3jH2/kA4LPb8Rwc46F1eXjEKAixjV8NKb837/sfQ VTxAzOwPhwcaBNwEWPMHyvyBKgVYNZjH6wyaVI0hWhet5fdGGRQaQ4Y2NWrnbo0NTL9DZMQF cL76VZQTYAxwAsjg8jlSY3yMSiZVKn7+hdfvTtFnqHmDE4QxhHyudO6zPKWMTVWk87t4Xsfr /7cYExSahSVWfu7e6GIKN44cWtRk8S0kZ+XFLNhXM0XLk1TGBPDRvODHtjUlKQUgepTcN/Eg /Fvbhcz1P3S/cAzF9ks9VNn3yy4VxB698lkReFkb8/pwySf2oJ7iyU2kf1mr+Vh/TXbehL+v MtVdGLfTGnpU1lr2ReuS+//KrYpvWtRGRVtF7suz2xNWzV/+o3VLGXHN4xbY9dcHBYuTeO77 K2yW+2JPc5ry15BHvcciHwqmlsR149v2DBt3rOltij3cHKLN3v9wnIxX9zaHba2Zalt9eZUR O6JzJYS2fxkfkfH0noPV8XcaJG7TWt9Q/k/BJx7XudM1h/7em79SeJWb/ChZ+Zt9l5wwqBTR kbjeoHgLOVHo+30DAAA= X-CMS-MailID: 20250529113257epcas5p4dbaf9c8e2dc362767c8553399632c1ea 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: 20250529113257epcas5p4dbaf9c8e2dc362767c8553399632c1ea References: <20250529111504.89912-1-kundan.kumar@samsung.com> X-Rspamd-Queue-Id: F253A140013 X-Stat-Signature: 1utq46dm61ewq8idq4zbtfspn6ktkron X-Rspam-User: X-Rspamd-Server: rspam04 X-HE-Tag: 1748518453-170399 X-HE-Meta: U2FsdGVkX1/Z4EAV1kKPgUIZ4m+m70WCxhrA03IgUQExkXyDqsJpO2IZ0CZ59fQvfoEBAL+nkQwlMEWoh5VvU+uRRz+C+yf+DeJ3nHtz9uh6dtJGi5bZrWWZXmnovdYaA28GlmVEOqL6ecQN4tP734ufd6Le7o67rGAMeRA2k4z8S3LGHyGSmB4tNoSAFrhBZinWl7yW5euL5ddvwl9fTo87SHIquzvaDQZtRc0/iJDgAFktdWhfUW5tdUhi28fz3GWsyKz+Fgc4MNjHzABIkXQJSbvHAgRi4LiuP4WZYch0L9bao5kSzhZvSNvWIrUmWdvuuD1GgVExTux9n7hwqCxh0zbL+Nja+L04WuBURBuiUv/99Z1FUymoNkxYBCyKgMHZw3HlCI+pGYBSxuClMbVL2cozo3n/0U0rk3IBPzut7EqF579SaJScGd/VMWyHPAI1mVYmPbeXrR0bQY+4Of+j53LTU9cZEMraA4Gq+8yeLyJEBe2KqKbmkC+XSgKMyJNqzbQBtuDVf4MoTuRDPgRAjRv9VbzmLvORxhJkuMopjsIqz2wnd/f0Mn07zgmM6sCkxFJ/8scjKNj0+m7xe6Ru7q+toftl3rVer0cUh36vCkDlbcGiZSTRRVCWxUQx7ekJAAal4RvP20YxsQTyndezrAYGm4U9uneJnoSBmGyy+PtEycbXt/wcx+qAvsEtSXNOjAJHPtR8MqA2m1ALvA56bdxgu26PZuKQxUDCYOGDIwGLQSF90Ih0KiAKz1R3TMyNORXCq/Vk6XXH8yl7WzV0kj2adronkPvkKI3uYuKwQrdDtOq4GpoKktYJw2eywkUkLIyh0NN2OLSB8GqMObPAM62fkFN1MOIh3HGysS1DmTd6wWwungnLGm7UoGGDZZGZu0uZnKBwAmJwnAeIaIhzMEfZzGbYSgY98mnJo3VdQs3g4isLfz1qEHRuED+mS5L8l7Oe34GVFWbiWuT ERViWHCk A6pn8xcbLqRGivu8/x/npmMjbFZsd/rRAjP+enKMkHq2SEj4Uy2od724c4F9RqR1/sFYC 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/fuse/file.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/fs/fuse/file.c b/fs/fuse/file.c index 7817219d1599..803359b02383 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c @@ -1851,11 +1851,11 @@ static void fuse_writepage_free(struct fuse_writepage_args *wpa) static void fuse_writepage_finish_stat(struct inode *inode, struct folio *folio) { - struct backing_dev_info *bdi = inode_to_bdi(inode); + struct bdi_writeback_ctx *bdi_wb_ctx = fetch_bdi_writeback_ctx(inode); - dec_wb_stat(&bdi->wb_ctx_arr[0]->wb, WB_WRITEBACK); + dec_wb_stat(&bdi_wb_ctx->wb, WB_WRITEBACK); node_stat_sub_folio(folio, NR_WRITEBACK_TEMP); - wb_writeout_inc(&bdi->wb_ctx_arr[0]->wb); + wb_writeout_inc(&bdi_wb_ctx->wb); } static void fuse_writepage_finish(struct fuse_writepage_args *wpa) @@ -2134,6 +2134,7 @@ static void fuse_writepage_args_page_fill(struct fuse_writepage_args *wpa, struc struct folio *tmp_folio, uint32_t folio_index) { struct inode *inode = folio->mapping->host; + struct bdi_writeback_ctx *bdi_wb_ctx = fetch_bdi_writeback_ctx(inode); struct fuse_args_pages *ap = &wpa->ia.ap; folio_copy(tmp_folio, folio); @@ -2142,7 +2143,7 @@ static void fuse_writepage_args_page_fill(struct fuse_writepage_args *wpa, struc ap->descs[folio_index].offset = 0; ap->descs[folio_index].length = PAGE_SIZE; - inc_wb_stat(&inode_to_bdi(inode)->wb_ctx_arr[0]->wb, WB_WRITEBACK); + inc_wb_stat(&bdi_wb_ctx->wb, WB_WRITEBACK); node_stat_add_folio(tmp_folio, NR_WRITEBACK_TEMP); } -- 2.25.1