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 X-Spam-Level: X-Spam-Status: No, score=-16.3 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id ECEC4C43381 for ; Wed, 27 Jan 2021 07:25:43 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id BC70B2072E for ; Wed, 27 Jan 2021 07:25:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233709AbhA0HZJ (ORCPT ); Wed, 27 Jan 2021 02:25:09 -0500 Received: from mail.kernel.org ([198.145.29.99]:48468 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233822AbhA0HWz (ORCPT ); Wed, 27 Jan 2021 02:22:55 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id 6F3FC2074F; Wed, 27 Jan 2021 07:22:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1611732134; bh=UmXZ4WGct5TD5g2zWBqeUZIY7+IEh1H1mojHQndD4p0=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=oDBiPqUDddARVPP8esIP80QkXjEj9+85T5QDZeh7nu2cYyt+eQZA8QDXikjpMwlat MNfPUAT8hEpYvyQzrx6AP5DR+ANmDLKNYdk+3I1Le4ClABg804A6YrqVAha+HDnXt3 aXXje54ZXGe396yLREjvTO7F28tQlsy1EwE9vIS6460xIuuh3AzToqKFH1MkXqxaCP /NJx/3JofqwPazejWSqyqiZGHT+4SBSDqNllnI/Q9rYdu+otPvNjz6i73xOtGWI2Ql 1f8AcHX5BqzHDL4QaB+j75p6mcXxGRjds0fAREsI+L/1LEC6UF0JYg2RbF8i9aAb9k jpAFtWZcqE2ig== Received: by mail-lf1-f44.google.com with SMTP id m22so1260324lfg.5; Tue, 26 Jan 2021 23:22:14 -0800 (PST) X-Gm-Message-State: AOAM5303XuknvkR3/10+dIV7QrBQc2plCURRi7nKrpFEWPMcqPAmjyaC WD/vu16cWM6W4HQFjxBvgfpHjbV7YZ7NAQJ19hQ= X-Google-Smtp-Source: ABdhPJxflUggj8S5jQsQ3WpKvrE0C44XGXqHsiBc4rX5F3+Z0c1NJpDcJfbjDkFKR5D14faCz9LusUBrixofxv3V23Y= X-Received: by 2002:a05:6512:5c6:: with SMTP id o6mr4374679lfo.281.1611732132634; Tue, 26 Jan 2021 23:22:12 -0800 (PST) MIME-Version: 1.0 References: <20210126145247.1964410-1-hch@lst.de> <20210126145247.1964410-13-hch@lst.de> In-Reply-To: <20210126145247.1964410-13-hch@lst.de> From: Song Liu Date: Tue, 26 Jan 2021 23:22:01 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 12/17] md: simplify sync_page_io To: Christoph Hellwig Cc: Jens Axboe , Jaegeuk Kim , Chao Yu , Philipp Reisner , Lars Ellenberg , Coly Li , Mike Snitzer , Josef Bacik , David Sterba , Damien Le Moal , Naohiro Aota , Andrew Morton , Ryusuke Konishi , linux-nilfs@vger.kernel.org, dm-devel@redhat.com, linux-f2fs-devel@lists.sourceforge.net, linux-block@vger.kernel.org, drbd-dev@lists.linbit.com, linux-bcache@vger.kernel.org, linux-raid , Linux-Fsdevel , linux-btrfs@vger.kernel.org, linux-nfs@vger.kernel.org, Linux-MM Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-raid@vger.kernel.org On Tue, Jan 26, 2021 at 7:14 AM Christoph Hellwig wrote: > > Use an on-stack bio and biovec for the single page synchronous I/O. > > Signed-off-by: Christoph Hellwig Acked-by: Song Liu > --- > drivers/md/md.c | 26 +++++++++++++------------- > 1 file changed, 13 insertions(+), 13 deletions(-) > > diff --git a/drivers/md/md.c b/drivers/md/md.c > index e2b9dbb6e888f6..6a27f52007c871 100644 > --- a/drivers/md/md.c > +++ b/drivers/md/md.c > @@ -1021,29 +1021,29 @@ int md_super_wait(struct mddev *mddev) > int sync_page_io(struct md_rdev *rdev, sector_t sector, int size, > struct page *page, int op, int op_flags, bool metadata_op) > { > - struct bio *bio = md_bio_alloc_sync(rdev->mddev); > - int ret; > + struct bio bio; > + struct bio_vec bvec; > + > + bio_init(&bio, &bvec, 1); > > if (metadata_op && rdev->meta_bdev) > - bio_set_dev(bio, rdev->meta_bdev); > + bio_set_dev(&bio, rdev->meta_bdev); > else > - bio_set_dev(bio, rdev->bdev); > - bio_set_op_attrs(bio, op, op_flags); > + bio_set_dev(&bio, rdev->bdev); > + bio.bi_opf = op | op_flags; > if (metadata_op) > - bio->bi_iter.bi_sector = sector + rdev->sb_start; > + bio.bi_iter.bi_sector = sector + rdev->sb_start; > else if (rdev->mddev->reshape_position != MaxSector && > (rdev->mddev->reshape_backwards == > (sector >= rdev->mddev->reshape_position))) > - bio->bi_iter.bi_sector = sector + rdev->new_data_offset; > + bio.bi_iter.bi_sector = sector + rdev->new_data_offset; > else > - bio->bi_iter.bi_sector = sector + rdev->data_offset; > - bio_add_page(bio, page, size, 0); > + bio.bi_iter.bi_sector = sector + rdev->data_offset; > + bio_add_page(&bio, page, size, 0); > > - submit_bio_wait(bio); > + submit_bio_wait(&bio); > > - ret = !bio->bi_status; > - bio_put(bio); > - return ret; > + return !bio.bi_status; > } > EXPORT_SYMBOL_GPL(sync_page_io); > > -- > 2.29.2 > 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 X-Spam-Level: X-Spam-Status: No, score=-16.3 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 16AAAC433E0 for ; Wed, 27 Jan 2021 07:22:18 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 934A82072C for ; Wed, 27 Jan 2021 07:22:17 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 934A82072C Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 258596B0006; Wed, 27 Jan 2021 02:22:17 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 207DE6B0007; Wed, 27 Jan 2021 02:22:17 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0D1426B0008; Wed, 27 Jan 2021 02:22:17 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0191.hostedemail.com [216.40.44.191]) by kanga.kvack.org (Postfix) with ESMTP id E6F956B0006 for ; Wed, 27 Jan 2021 02:22:16 -0500 (EST) Received: from smtpin16.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id B2292181AF5C2 for ; Wed, 27 Jan 2021 07:22:16 +0000 (UTC) X-FDA: 77750711472.16.can39_13037b027595 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin16.hostedemail.com (Postfix) with ESMTP id 92F06100E6903 for ; Wed, 27 Jan 2021 07:22:16 +0000 (UTC) X-HE-Tag: can39_13037b027595 X-Filterd-Recvd-Size: 5073 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by imf20.hostedemail.com (Postfix) with ESMTP for ; Wed, 27 Jan 2021 07:22:15 +0000 (UTC) Received: by mail.kernel.org (Postfix) with ESMTPSA id 726012075B for ; Wed, 27 Jan 2021 07:22:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1611732134; bh=UmXZ4WGct5TD5g2zWBqeUZIY7+IEh1H1mojHQndD4p0=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=oDBiPqUDddARVPP8esIP80QkXjEj9+85T5QDZeh7nu2cYyt+eQZA8QDXikjpMwlat MNfPUAT8hEpYvyQzrx6AP5DR+ANmDLKNYdk+3I1Le4ClABg804A6YrqVAha+HDnXt3 aXXje54ZXGe396yLREjvTO7F28tQlsy1EwE9vIS6460xIuuh3AzToqKFH1MkXqxaCP /NJx/3JofqwPazejWSqyqiZGHT+4SBSDqNllnI/Q9rYdu+otPvNjz6i73xOtGWI2Ql 1f8AcHX5BqzHDL4QaB+j75p6mcXxGRjds0fAREsI+L/1LEC6UF0JYg2RbF8i9aAb9k jpAFtWZcqE2ig== Received: by mail-lf1-f42.google.com with SMTP id a12so1277370lfb.1 for ; Tue, 26 Jan 2021 23:22:14 -0800 (PST) X-Gm-Message-State: AOAM5316qkxbYldR8WBDZgxj5wiRBKxvR8Jpzv+J82JAUutUoYtt4L3U g+mi7ztSHhYczHcRoF2Ez203dC9JE43LgM9AA3c= X-Google-Smtp-Source: ABdhPJxflUggj8S5jQsQ3WpKvrE0C44XGXqHsiBc4rX5F3+Z0c1NJpDcJfbjDkFKR5D14faCz9LusUBrixofxv3V23Y= X-Received: by 2002:a05:6512:5c6:: with SMTP id o6mr4374679lfo.281.1611732132634; Tue, 26 Jan 2021 23:22:12 -0800 (PST) MIME-Version: 1.0 References: <20210126145247.1964410-1-hch@lst.de> <20210126145247.1964410-13-hch@lst.de> In-Reply-To: <20210126145247.1964410-13-hch@lst.de> From: Song Liu Date: Tue, 26 Jan 2021 23:22:01 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 12/17] md: simplify sync_page_io To: Christoph Hellwig Cc: Jens Axboe , Jaegeuk Kim , Chao Yu , Philipp Reisner , Lars Ellenberg , Coly Li , Mike Snitzer , Josef Bacik , David Sterba , Damien Le Moal , Naohiro Aota , Andrew Morton , Ryusuke Konishi , linux-nilfs@vger.kernel.org, dm-devel@redhat.com, linux-f2fs-devel@lists.sourceforge.net, linux-block@vger.kernel.org, drbd-dev@lists.linbit.com, linux-bcache@vger.kernel.org, linux-raid , Linux-Fsdevel , linux-btrfs@vger.kernel.org, linux-nfs@vger.kernel.org, Linux-MM Content-Type: text/plain; charset="UTF-8" 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 Tue, Jan 26, 2021 at 7:14 AM Christoph Hellwig wrote: > > Use an on-stack bio and biovec for the single page synchronous I/O. > > Signed-off-by: Christoph Hellwig Acked-by: Song Liu > --- > drivers/md/md.c | 26 +++++++++++++------------- > 1 file changed, 13 insertions(+), 13 deletions(-) > > diff --git a/drivers/md/md.c b/drivers/md/md.c > index e2b9dbb6e888f6..6a27f52007c871 100644 > --- a/drivers/md/md.c > +++ b/drivers/md/md.c > @@ -1021,29 +1021,29 @@ int md_super_wait(struct mddev *mddev) > int sync_page_io(struct md_rdev *rdev, sector_t sector, int size, > struct page *page, int op, int op_flags, bool metadata_op) > { > - struct bio *bio = md_bio_alloc_sync(rdev->mddev); > - int ret; > + struct bio bio; > + struct bio_vec bvec; > + > + bio_init(&bio, &bvec, 1); > > if (metadata_op && rdev->meta_bdev) > - bio_set_dev(bio, rdev->meta_bdev); > + bio_set_dev(&bio, rdev->meta_bdev); > else > - bio_set_dev(bio, rdev->bdev); > - bio_set_op_attrs(bio, op, op_flags); > + bio_set_dev(&bio, rdev->bdev); > + bio.bi_opf = op | op_flags; > if (metadata_op) > - bio->bi_iter.bi_sector = sector + rdev->sb_start; > + bio.bi_iter.bi_sector = sector + rdev->sb_start; > else if (rdev->mddev->reshape_position != MaxSector && > (rdev->mddev->reshape_backwards == > (sector >= rdev->mddev->reshape_position))) > - bio->bi_iter.bi_sector = sector + rdev->new_data_offset; > + bio.bi_iter.bi_sector = sector + rdev->new_data_offset; > else > - bio->bi_iter.bi_sector = sector + rdev->data_offset; > - bio_add_page(bio, page, size, 0); > + bio.bi_iter.bi_sector = sector + rdev->data_offset; > + bio_add_page(&bio, page, size, 0); > > - submit_bio_wait(bio); > + submit_bio_wait(&bio); > > - ret = !bio->bi_status; > - bio_put(bio); > - return ret; > + return !bio.bi_status; > } > EXPORT_SYMBOL_GPL(sync_page_io); > > -- > 2.29.2 > 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 X-Spam-Level: X-Spam-Status: No, score=-13.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 394E5C433DB for ; Wed, 27 Jan 2021 07:22:33 +0000 (UTC) Received: from lists.sourceforge.net (lists.sourceforge.net [216.105.38.7]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id AE40220729 for ; Wed, 27 Jan 2021 07:22:32 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org AE40220729 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linux-f2fs-devel-bounces@lists.sourceforge.net Received: from [127.0.0.1] (helo=sfs-ml-4.v29.lw.sourceforge.com) by sfs-ml-4.v29.lw.sourceforge.com with esmtp (Exim 4.90_1) (envelope-from ) id 1l4f9r-0002Fg-Tx; Wed, 27 Jan 2021 07:22:31 +0000 Received: from [172.30.20.202] (helo=mx.sourceforge.net) by sfs-ml-4.v29.lw.sourceforge.com with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l4f9p-0002FV-1R for linux-f2fs-devel@lists.sourceforge.net; Wed, 27 Jan 2021 07:22:29 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sourceforge.net; s=x; h=Content-Type:Cc:To:Subject:Message-ID:Date:From: In-Reply-To:References:MIME-Version:Sender:Reply-To:Content-Transfer-Encoding :Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=F7WOzbHYieYbjVRWFhSaBjp7IQ9GHp5JECpzQk1IYxs=; b=fv4RD5NJ6C29z53Yr0L/pf2Ucd fCWQ58umNT3H+dFENfeTiXrbYFBnyhj7yPVrcXVAPYu75weD1VbagA24tLVscTNx97t+b4ioukS73 JwnUFbdU/5UJciyXgMfiPfuo14U5ryhVzTLG1mSQJ6KAigeaCCu4YLf7sAz7GwHJWZzY=; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sf.net; s=x ; h=Content-Type:Cc:To:Subject:Message-ID:Date:From:In-Reply-To:References: MIME-Version:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=F7WOzbHYieYbjVRWFhSaBjp7IQ9GHp5JECpzQk1IYxs=; b=aEAO6y06Vi0MYmU1CDv7XizJzZ XFr7H8NQ6WJYdRT3TjWImh6LK4uY8T9U+XWrsJKS8iwb+GFkqD+0BLPkZt1YfIH8gf20QC3w3q0aO fL/r0+dO7NbzI0HXociUen9mzkVBJTRKDsnJJkkEk3nAktH/4nahMM521Gcp8H5stsUo=; Received: from mail.kernel.org ([198.145.29.99]) by sfi-mx-1.v28.lw.sourceforge.com with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.92.2) id 1l4f9n-009o0z-HO for linux-f2fs-devel@lists.sourceforge.net; Wed, 27 Jan 2021 07:22:28 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id 7D5E920760 for ; Wed, 27 Jan 2021 07:22:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1611732134; bh=UmXZ4WGct5TD5g2zWBqeUZIY7+IEh1H1mojHQndD4p0=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=oDBiPqUDddARVPP8esIP80QkXjEj9+85T5QDZeh7nu2cYyt+eQZA8QDXikjpMwlat MNfPUAT8hEpYvyQzrx6AP5DR+ANmDLKNYdk+3I1Le4ClABg804A6YrqVAha+HDnXt3 aXXje54ZXGe396yLREjvTO7F28tQlsy1EwE9vIS6460xIuuh3AzToqKFH1MkXqxaCP /NJx/3JofqwPazejWSqyqiZGHT+4SBSDqNllnI/Q9rYdu+otPvNjz6i73xOtGWI2Ql 1f8AcHX5BqzHDL4QaB+j75p6mcXxGRjds0fAREsI+L/1LEC6UF0JYg2RbF8i9aAb9k jpAFtWZcqE2ig== Received: by mail-lf1-f52.google.com with SMTP id p21so1228990lfu.11 for ; Tue, 26 Jan 2021 23:22:14 -0800 (PST) X-Gm-Message-State: AOAM530b8VtFy99E0YaQKQcYhiwdKfdsssxn4plkX8+w0BSaWPJCLWwj wLYddlzx/5z8mxGLyo6KU5GX2qOHQ6gRHq8ojKk= X-Google-Smtp-Source: ABdhPJxflUggj8S5jQsQ3WpKvrE0C44XGXqHsiBc4rX5F3+Z0c1NJpDcJfbjDkFKR5D14faCz9LusUBrixofxv3V23Y= X-Received: by 2002:a05:6512:5c6:: with SMTP id o6mr4374679lfo.281.1611732132634; Tue, 26 Jan 2021 23:22:12 -0800 (PST) MIME-Version: 1.0 References: <20210126145247.1964410-1-hch@lst.de> <20210126145247.1964410-13-hch@lst.de> In-Reply-To: <20210126145247.1964410-13-hch@lst.de> From: Song Liu Date: Tue, 26 Jan 2021 23:22:01 -0800 X-Gmail-Original-Message-ID: Message-ID: To: Christoph Hellwig X-Headers-End: 1l4f9n-009o0z-HO Subject: Re: [f2fs-dev] [PATCH 12/17] md: simplify sync_page_io X-BeenThere: linux-f2fs-devel@lists.sourceforge.net X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mike Snitzer , Linux-MM , dm-devel@redhat.com, drbd-dev@lists.linbit.com, Naohiro Aota , linux-nilfs@vger.kernel.org, Josef Bacik , Coly Li , linux-raid , linux-bcache@vger.kernel.org, David Sterba , Jaegeuk Kim , Ryusuke Konishi , Jens Axboe , linux-block@vger.kernel.org, Damien Le Moal , Andrew Morton , Philipp Reisner , linux-f2fs-devel@lists.sourceforge.net, Linux-Fsdevel , Lars Ellenberg , linux-nfs@vger.kernel.org, linux-btrfs@vger.kernel.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: linux-f2fs-devel-bounces@lists.sourceforge.net On Tue, Jan 26, 2021 at 7:14 AM Christoph Hellwig wrote: > > Use an on-stack bio and biovec for the single page synchronous I/O. > > Signed-off-by: Christoph Hellwig Acked-by: Song Liu > --- > drivers/md/md.c | 26 +++++++++++++------------- > 1 file changed, 13 insertions(+), 13 deletions(-) > > diff --git a/drivers/md/md.c b/drivers/md/md.c > index e2b9dbb6e888f6..6a27f52007c871 100644 > --- a/drivers/md/md.c > +++ b/drivers/md/md.c > @@ -1021,29 +1021,29 @@ int md_super_wait(struct mddev *mddev) > int sync_page_io(struct md_rdev *rdev, sector_t sector, int size, > struct page *page, int op, int op_flags, bool metadata_op) > { > - struct bio *bio = md_bio_alloc_sync(rdev->mddev); > - int ret; > + struct bio bio; > + struct bio_vec bvec; > + > + bio_init(&bio, &bvec, 1); > > if (metadata_op && rdev->meta_bdev) > - bio_set_dev(bio, rdev->meta_bdev); > + bio_set_dev(&bio, rdev->meta_bdev); > else > - bio_set_dev(bio, rdev->bdev); > - bio_set_op_attrs(bio, op, op_flags); > + bio_set_dev(&bio, rdev->bdev); > + bio.bi_opf = op | op_flags; > if (metadata_op) > - bio->bi_iter.bi_sector = sector + rdev->sb_start; > + bio.bi_iter.bi_sector = sector + rdev->sb_start; > else if (rdev->mddev->reshape_position != MaxSector && > (rdev->mddev->reshape_backwards == > (sector >= rdev->mddev->reshape_position))) > - bio->bi_iter.bi_sector = sector + rdev->new_data_offset; > + bio.bi_iter.bi_sector = sector + rdev->new_data_offset; > else > - bio->bi_iter.bi_sector = sector + rdev->data_offset; > - bio_add_page(bio, page, size, 0); > + bio.bi_iter.bi_sector = sector + rdev->data_offset; > + bio_add_page(&bio, page, size, 0); > > - submit_bio_wait(bio); > + submit_bio_wait(&bio); > > - ret = !bio->bi_status; > - bio_put(bio); > - return ret; > + return !bio.bi_status; > } > EXPORT_SYMBOL_GPL(sync_page_io); > > -- > 2.29.2 > _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel 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 X-Spam-Level: X-Spam-Status: No, score=-14.0 required=3.0 tests=BAYES_00,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id CD08FC433DB for ; Wed, 27 Jan 2021 10:02:48 +0000 (UTC) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [216.205.24.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 3218B2076E for ; Wed, 27 Jan 2021 10:02:47 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3218B2076E Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=tempfail smtp.mailfrom=dm-devel-bounces@redhat.com Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-197-RUOdgzCjM9eh35FolCemxw-1; Wed, 27 Jan 2021 05:02:45 -0500 X-MC-Unique: RUOdgzCjM9eh35FolCemxw-1 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 024221034B21; Wed, 27 Jan 2021 10:02:40 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id CE2881F407; Wed, 27 Jan 2021 10:02:39 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 9C2CC4EEEE; Wed, 27 Jan 2021 10:02:39 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 10R7MLtF006966 for ; Wed, 27 Jan 2021 02:22:21 -0500 Received: by smtp.corp.redhat.com (Postfix) id 7A4B12026DE4; Wed, 27 Jan 2021 07:22:21 +0000 (UTC) Received: from mimecast-mx02.redhat.com (mimecast03.extmail.prod.ext.rdu2.redhat.com [10.11.55.19]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 740052026D16 for ; Wed, 27 Jan 2021 07:22:18 +0000 (UTC) Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 857C8811E76 for ; Wed, 27 Jan 2021 07:22:18 +0000 (UTC) Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-258-1J9pyzs-PZ6IXCUVq2d1oQ-1; Wed, 27 Jan 2021 02:22:16 -0500 X-MC-Unique: 1J9pyzs-PZ6IXCUVq2d1oQ-1 Received: by mail.kernel.org (Postfix) with ESMTPSA id 7210F2075A; Wed, 27 Jan 2021 07:22:14 +0000 (UTC) Received: by mail-lf1-f49.google.com with SMTP id q8so1234704lfm.10; Tue, 26 Jan 2021 23:22:14 -0800 (PST) X-Gm-Message-State: AOAM5332fD9RFi+z3akH+nmsLVjpodmX5dSRXIslYnejwQ/4Q8MwG+SC XQaFRihFlmaSXpNKokl8Yf59MQefsbq/D0QwIhg= X-Google-Smtp-Source: ABdhPJxflUggj8S5jQsQ3WpKvrE0C44XGXqHsiBc4rX5F3+Z0c1NJpDcJfbjDkFKR5D14faCz9LusUBrixofxv3V23Y= X-Received: by 2002:a05:6512:5c6:: with SMTP id o6mr4374679lfo.281.1611732132634; Tue, 26 Jan 2021 23:22:12 -0800 (PST) MIME-Version: 1.0 References: <20210126145247.1964410-1-hch@lst.de> <20210126145247.1964410-13-hch@lst.de> In-Reply-To: <20210126145247.1964410-13-hch@lst.de> From: Song Liu Date: Tue, 26 Jan 2021 23:22:01 -0800 X-Gmail-Original-Message-ID: Message-ID: To: Christoph Hellwig X-Mimecast-Impersonation-Protect: Policy=CLT - Impersonation Protection Definition; Similar Internal Domain=false; Similar Monitored External Domain=false; Custom External Domain=false; Mimecast External Domain=false; Newly Observed Domain=false; Internal User Name=false; Custom Display Name List=false; Reply-to Address Mismatch=false; Targeted Threat Dictionary=false; Mimecast Threat Dictionary=false; Custom Threat Dictionary=false X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: dm-devel@redhat.com X-Mailman-Approved-At: Wed, 27 Jan 2021 05:02:17 -0500 Cc: Mike Snitzer , David Sterba , dm-devel@redhat.com, Naohiro Aota , linux-nilfs@vger.kernel.org, Chao Yu , Josef Bacik , Coly Li , linux-raid , linux-bcache@vger.kernel.org, drbd-dev@tron.linbit.com, Jaegeuk Kim , Ryusuke Konishi , Jens Axboe , linux-block@vger.kernel.org, Damien Le Moal , Andrew Morton , Linux-MM , Philipp Reisner , linux-f2fs-devel@lists.sourceforge.net, Linux-Fsdevel , Lars Ellenberg , linux-nfs@vger.kernel.org, linux-btrfs@vger.kernel.org Subject: Re: [dm-devel] [PATCH 12/17] md: simplify sync_page_io X-BeenThere: dm-devel@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: device-mapper development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dm-devel-bounces@redhat.com Errors-To: dm-devel-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=dm-devel-bounces@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit On Tue, Jan 26, 2021 at 7:14 AM Christoph Hellwig wrote: > > Use an on-stack bio and biovec for the single page synchronous I/O. > > Signed-off-by: Christoph Hellwig Acked-by: Song Liu > --- > drivers/md/md.c | 26 +++++++++++++------------- > 1 file changed, 13 insertions(+), 13 deletions(-) > > diff --git a/drivers/md/md.c b/drivers/md/md.c > index e2b9dbb6e888f6..6a27f52007c871 100644 > --- a/drivers/md/md.c > +++ b/drivers/md/md.c > @@ -1021,29 +1021,29 @@ int md_super_wait(struct mddev *mddev) > int sync_page_io(struct md_rdev *rdev, sector_t sector, int size, > struct page *page, int op, int op_flags, bool metadata_op) > { > - struct bio *bio = md_bio_alloc_sync(rdev->mddev); > - int ret; > + struct bio bio; > + struct bio_vec bvec; > + > + bio_init(&bio, &bvec, 1); > > if (metadata_op && rdev->meta_bdev) > - bio_set_dev(bio, rdev->meta_bdev); > + bio_set_dev(&bio, rdev->meta_bdev); > else > - bio_set_dev(bio, rdev->bdev); > - bio_set_op_attrs(bio, op, op_flags); > + bio_set_dev(&bio, rdev->bdev); > + bio.bi_opf = op | op_flags; > if (metadata_op) > - bio->bi_iter.bi_sector = sector + rdev->sb_start; > + bio.bi_iter.bi_sector = sector + rdev->sb_start; > else if (rdev->mddev->reshape_position != MaxSector && > (rdev->mddev->reshape_backwards == > (sector >= rdev->mddev->reshape_position))) > - bio->bi_iter.bi_sector = sector + rdev->new_data_offset; > + bio.bi_iter.bi_sector = sector + rdev->new_data_offset; > else > - bio->bi_iter.bi_sector = sector + rdev->data_offset; > - bio_add_page(bio, page, size, 0); > + bio.bi_iter.bi_sector = sector + rdev->data_offset; > + bio_add_page(&bio, page, size, 0); > > - submit_bio_wait(bio); > + submit_bio_wait(&bio); > > - ret = !bio->bi_status; > - bio_put(bio); > - return ret; > + return !bio.bi_status; > } > EXPORT_SYMBOL_GPL(sync_page_io); > > -- > 2.29.2 > -- dm-devel mailing list dm-devel@redhat.com https://www.redhat.com/mailman/listinfo/dm-devel From mboxrd@z Thu Jan 1 00:00:00 1970 From: Song Liu Subject: Re: [PATCH 12/17] md: simplify sync_page_io Date: Tue, 26 Jan 2021 23:22:01 -0800 Message-ID: References: <20210126145247.1964410-1-hch@lst.de> <20210126145247.1964410-13-hch@lst.de> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1611732134; bh=UmXZ4WGct5TD5g2zWBqeUZIY7+IEh1H1mojHQndD4p0=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=oDBiPqUDddARVPP8esIP80QkXjEj9+85T5QDZeh7nu2cYyt+eQZA8QDXikjpMwlat MNfPUAT8hEpYvyQzrx6AP5DR+ANmDLKNYdk+3I1Le4ClABg804A6YrqVAha+HDnXt3 aXXje54ZXGe396yLREjvTO7F28tQlsy1EwE9vIS6460xIuuh3AzToqKFH1MkXqxaCP /NJx/3JofqwPazejWSqyqiZGHT+4SBSDqNllnI/Q9rYdu+otPvNjz6i73xOtGWI2Ql 1f8AcHX5BqzHDL4QaB+j75p6mcXxGRjds0fAREsI+L/1LEC6UF0JYg2RbF8i9aAb9k jpAFtWZcqE2ig== In-Reply-To: <20210126145247.1964410-13-hch-jcswGhMUV9g@public.gmane.org> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: drbd-dev-bounces-cunTk1MwBs8qoQakbn7OcQ@public.gmane.org Errors-To: drbd-dev-bounces-cunTk1MwBs8qoQakbn7OcQ@public.gmane.org To: Christoph Hellwig Cc: Mike Snitzer , Linux-MM , dm-devel-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org, drbd-dev-cunTk1MwBs8qoQakbn7OcQ@public.gmane.org, Naohiro Aota , linux-nilfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Chao Yu , Josef Bacik , Coly Li , linux-raid , linux-bcache-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, David Sterba , Jaegeuk Kim , Ryusuke Konishi , Jens Axboe , linux-block-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Damien Le Moal , Andrew Morton , Philipp Reisner , linux-f2fs-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org, Linux-Fsdevel , Lars Ellenberg , linux-nfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-btrfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org On Tue, Jan 26, 2021 at 7:14 AM Christoph Hellwig wrote: > > Use an on-stack bio and biovec for the single page synchronous I/O. > > Signed-off-by: Christoph Hellwig Acked-by: Song Liu > --- > drivers/md/md.c | 26 +++++++++++++------------- > 1 file changed, 13 insertions(+), 13 deletions(-) > > diff --git a/drivers/md/md.c b/drivers/md/md.c > index e2b9dbb6e888f6..6a27f52007c871 100644 > --- a/drivers/md/md.c > +++ b/drivers/md/md.c > @@ -1021,29 +1021,29 @@ int md_super_wait(struct mddev *mddev) > int sync_page_io(struct md_rdev *rdev, sector_t sector, int size, > struct page *page, int op, int op_flags, bool metadata_op) > { > - struct bio *bio = md_bio_alloc_sync(rdev->mddev); > - int ret; > + struct bio bio; > + struct bio_vec bvec; > + > + bio_init(&bio, &bvec, 1); > > if (metadata_op && rdev->meta_bdev) > - bio_set_dev(bio, rdev->meta_bdev); > + bio_set_dev(&bio, rdev->meta_bdev); > else > - bio_set_dev(bio, rdev->bdev); > - bio_set_op_attrs(bio, op, op_flags); > + bio_set_dev(&bio, rdev->bdev); > + bio.bi_opf = op | op_flags; > if (metadata_op) > - bio->bi_iter.bi_sector = sector + rdev->sb_start; > + bio.bi_iter.bi_sector = sector + rdev->sb_start; > else if (rdev->mddev->reshape_position != MaxSector && > (rdev->mddev->reshape_backwards == > (sector >= rdev->mddev->reshape_position))) > - bio->bi_iter.bi_sector = sector + rdev->new_data_offset; > + bio.bi_iter.bi_sector = sector + rdev->new_data_offset; > else > - bio->bi_iter.bi_sector = sector + rdev->data_offset; > - bio_add_page(bio, page, size, 0); > + bio.bi_iter.bi_sector = sector + rdev->data_offset; > + bio_add_page(&bio, page, size, 0); > > - submit_bio_wait(bio); > + submit_bio_wait(&bio); > > - ret = !bio->bi_status; > - bio_put(bio); > - return ret; > + return !bio.bi_status; > } > EXPORT_SYMBOL_GPL(sync_page_io); > > -- > 2.29.2 >