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 C8FECC6FD1D for ; Wed, 15 Mar 2023 14:52:22 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 611576B0075; Wed, 15 Mar 2023 10:52:22 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5C0DA6B0078; Wed, 15 Mar 2023 10:52:22 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 462016B007B; Wed, 15 Mar 2023 10:52:22 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 364A66B0075 for ; Wed, 15 Mar 2023 10:52:22 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 1194A81216 for ; Wed, 15 Mar 2023 14:52:22 +0000 (UTC) X-FDA: 80571423324.20.5ACBB33 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by imf07.hostedemail.com (Postfix) with ESMTP id 0B30B40019 for ; Wed, 15 Mar 2023 14:52:19 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=BRQirtO4; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=tV4w+Hvq; spf=pass (imf07.hostedemail.com: domain of hare@suse.de designates 195.135.220.29 as permitted sender) smtp.mailfrom=hare@suse.de; dmarc=pass (policy=none) header.from=suse.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1678891940; 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=EeXuBT5re30n3EyAvxraZ4YKC162yAT2h8vBulDZHfg=; b=l0ODdVOm8lz+7NTa0frwXxcM4VXUI8mFbcr8PDXS6VW2UcStumHbGN7a/gQ9q4dn68YkUG Q0uzpR4ZV1xjUl1U3xeuwJ/wvdUEH7Z0WQ0QH4fQKfg0vajGiuQe4sC3OYgjEiIdjpRMeO ymUCU+ZBS6518R0txMasmbl6zHxCmiM= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=BRQirtO4; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=tV4w+Hvq; spf=pass (imf07.hostedemail.com: domain of hare@suse.de designates 195.135.220.29 as permitted sender) smtp.mailfrom=hare@suse.de; dmarc=pass (policy=none) header.from=suse.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1678891940; a=rsa-sha256; cv=none; b=aME0cI02se8zoRFT87b8QPDZ+5Zbz1ov5VooM31igNCK0tqPoOxoQ7z2+0rWwESsmXudNk SvlcHrmX4S32Ix5pQD6W0uSFmDxkGl6Q7t4d7AKLv/x81rOM0es1uor7oWIIlbSOP+kuMn FV71WwnNhcRgb6/Q704ljxK/4xDqHQ8= Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id AD4801FD7D; Wed, 15 Mar 2023 14:52:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1678891938; h=from:from:reply-to: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; bh=EeXuBT5re30n3EyAvxraZ4YKC162yAT2h8vBulDZHfg=; b=BRQirtO4JiHFW+e/VMG4fmjhkpXqE53I2/DwtbxDAN2K4v4x3js+Fu4XOMb3a9w9IvT8k3 EVkJ+YUb01F9L7oYqRBgPJJNiZELGGTZAgLdH+AwSGXSGlQhu6BT5GwTuRocsHs3C9wQ+e 8vmTENppyygkG+LGDpNylglnfJbH7+0= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1678891938; h=from:from:reply-to: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; bh=EeXuBT5re30n3EyAvxraZ4YKC162yAT2h8vBulDZHfg=; b=tV4w+HvqB4FUzJ2fUhT1gqgQjMumf9KQcoHfwajPgkzztoNGnc4vjWZR6BCCD5Ln7h1WJu uen4gD7+EXJcHjBw== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id E5EED13A00; Wed, 15 Mar 2023 14:52:16 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id VZi4I6DbEWRLVgAAMHmgww (envelope-from ); Wed, 15 Mar 2023 14:52:16 +0000 Message-ID: <64a5e85e-4018-ed7d-29d4-db12af290899@suse.de> Date: Wed, 15 Mar 2023 15:52:15 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [RFC PATCH 2/3] mpage: use bio_for_each_folio_all in mpage_end_io() Content-Language: en-US To: Pankaj Raghav , hubcap@omnibond.com, senozhatsky@chromium.org, martin@omnibond.com, willy@infradead.org, minchan@kernel.org, viro@zeniv.linux.org.uk, brauner@kernel.org, axboe@kernel.dk, akpm@linux-foundation.org Cc: linux-kernel@vger.kernel.org, linux-block@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, gost.dev@samsung.com, mcgrof@kernel.org, devel@lists.orangefs.org References: <20230315123233.121593-1-p.raghav@samsung.com> <20230315123233.121593-3-p.raghav@samsung.com> From: Hannes Reinecke In-Reply-To: <20230315123233.121593-3-p.raghav@samsung.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 0B30B40019 X-Stat-Signature: 9q5qe8nkmhyiypbp1cp6b6p3yr4eu74g X-HE-Tag: 1678891939-852595 X-HE-Meta: U2FsdGVkX19tMHRXVDZ9Sb+ah/zzXx15uRIE1Km0byXUriqLPvOym7e4a2lIN7CFh3QovjNTO37atyN6t+UnsoKTaq3p+CO15nH1JS4goJbwYQ0LEUKFG8UvjWp20072/82NY6P5z8yf3k61mzZur/OGAksdM+2oFQyJ4ndLtHKv7ksB+RaZceMmgBZ/HAbJoTERjddKUAUHkD1MBZorFNQoWIZmUQ0dA0qWlDzuwW6IP6DXEjIWA0U9UUcOuL6rFMp5h1s3v9tQwWeWp6vPj20r8WmkaQG9Frl1XgbtRF8rv8kRbDnFFvWDydeHHH1aUavKOa95KunlzC8tCveigH6QsLOcjJWhY22tre1bTr3lUdldL8h7rODZKx4DSmLQQX4sNfYTAwTJwi9J6bGvKmmCHPgGTay72rhiB8UQk2mRsbnxGVSs3gV+GhgnOUUDVS9AvsboJpUiN1gzTbKznkndvyRwpUE8cjokdB6cyfa4pZ9Jsn9Fg8REjhCJwxJM4mDkxRBm5Z7XrtFnGILK4P5INMXrWvwNRRqvK2098mJ75v1A4QVQ3GhSMobIa9T43SCEdTR14nSZjG0LCztg4Yyop2TpfXsCZSMfXZmMuXfYI8+CTWW/Z9+AsmH7XA+PYf5hwPc59fdPqNRICbxCNtKMLqwmJlDGr9v4JzF4zmYjWg2vPlX4DMw08xORDmORXBZW3v7hZyE87bH3D7rsDPPSq9VfEOIbBF/k2h4HjKx3zd0HQauhGgv9SoUyrcLaARtN7DD6da1OWhH5saK5mephQG+/VrMKcbx+KBgdetfodOYxr5rapFEMZ6hyd5kNQ8JAl6ZRFZL24mh+GjJ1gOE8oeoyDtAwUXesrKF6xY8mz7s60393V9wtNZUiZ7pPSOCmbAjprKMP6fF8tti8g2XjS9MgCjbZpyNlgdasoKudQPVrLK4JrX2CDgCpG94aokPdKCxeN1mz6U75S0w KSqKA0sC z7P+i9VqSaYfvfm1zCXryDJUjBZffqndp+Vl+/04el5j9bF06sKs6h+mAA0+fMTXruf7hzAs9pmUE+AbXyBPdl6hLpCV3CIhikH190x0DXGvRiFzQqy24MKDrgV7I14Sfu31G8EXWt+dWZ2dImpEqSxKBqIII6rn63WsQ5SeZGOQMcKxg8p1YKa/lfrYSsbQSu6/PO5pjfNwebsG/nwttZs9aEPZ9jcdDWg7jZYWYOFu4aKGXysm59oIVAY7VOcMk4nWI8ZoTBQzR57+V8LPYleJxTRKUSrhqdQ6IPsL1kb1kVdgbfifuJ67DrA== 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 3/15/23 13:32, Pankaj Raghav wrote: > Use bio_for_each_folio_all to iterate through folios in a bio so that > the folios can be directly passed to the folio_endio() function. > > Signed-off-by: Pankaj Raghav > --- > fs/mpage.c | 11 ++++------- > 1 file changed, 4 insertions(+), 7 deletions(-) > > diff --git a/fs/mpage.c b/fs/mpage.c > index 40e86e839e77..bfcc139938a8 100644 > --- a/fs/mpage.c > +++ b/fs/mpage.c > @@ -45,14 +45,11 @@ > */ > static void mpage_end_io(struct bio *bio) > { > - struct bio_vec *bv; > - struct bvec_iter_all iter_all; > + struct folio_iter fi; > > - bio_for_each_segment_all(bv, bio, iter_all) { > - struct page *page = bv->bv_page; > - folio_endio(page_folio(page), bio_op(bio), > - blk_status_to_errno(bio->bi_status)); > - } > + bio_for_each_folio_all(fi, bio) > + folio_endio(fi.folio, bio_op(bio), > + blk_status_to_errno(bio->bi_status)); > > bio_put(bio); > } Ah. Here it is. I would suggest merge these two patches. Cheers, Hannes