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=-15.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_SANE_1 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 641F3C6379F for ; Fri, 20 Nov 2020 07:41:43 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 2A902223BE for ; Fri, 20 Nov 2020 07:41:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726255AbgKTHlV (ORCPT ); Fri, 20 Nov 2020 02:41:21 -0500 Received: from mx2.suse.de ([195.135.220.15]:34936 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725768AbgKTHlV (ORCPT ); Fri, 20 Nov 2020 02:41:21 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id 0C348AC23; Fri, 20 Nov 2020 07:41:19 +0000 (UTC) Subject: Re: [PATCH 64/78] dm: simplify flush_bio initialization in __send_empty_flush To: Christoph Hellwig , Jens Axboe Cc: Justin Sanders , Josef Bacik , Ilya Dryomov , Jack Wang , "Michael S. Tsirkin" , Jason Wang , Paolo Bonzini , Stefan Hajnoczi , Konrad Rzeszutek Wilk , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Minchan Kim , Mike Snitzer , Song Liu , "Martin K. Petersen" , dm-devel@redhat.com, linux-block@vger.kernel.org, drbd-dev@lists.linbit.com, nbd@other.debian.org, ceph-devel@vger.kernel.org, xen-devel@lists.xenproject.org, linux-raid@vger.kernel.org, linux-nvme@lists.infradead.org, linux-scsi@vger.kernel.org, linux-fsdevel@vger.kernel.org References: <20201116145809.410558-1-hch@lst.de> <20201116145809.410558-65-hch@lst.de> From: Hannes Reinecke Message-ID: <38ac9782-a563-b7ea-595a-124159fb755d@suse.de> Date: Fri, 20 Nov 2020 08:41:17 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.4.0 MIME-Version: 1.0 In-Reply-To: <20201116145809.410558-65-hch@lst.de> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-raid@vger.kernel.org On 11/16/20 3:57 PM, Christoph Hellwig wrote: > We don't really need the struct block_device to initialize a bio. So > switch from using bio_set_dev to manually setting up bi_disk (bi_partno > will always be zero and has been cleared by bio_init already). > > Signed-off-by: Christoph Hellwig > --- > drivers/md/dm.c | 12 +++--------- > 1 file changed, 3 insertions(+), 9 deletions(-) > > diff --git a/drivers/md/dm.c b/drivers/md/dm.c > index 54739f1b579bc8..6d7eb72d41f9ea 100644 > --- a/drivers/md/dm.c > +++ b/drivers/md/dm.c > @@ -1422,18 +1422,12 @@ static int __send_empty_flush(struct clone_info *ci) > */ > bio_init(&flush_bio, NULL, 0); > flush_bio.bi_opf = REQ_OP_WRITE | REQ_PREFLUSH | REQ_SYNC; > + flush_bio.bi_disk = ci->io->md->disk; > + bio_associate_blkg(&flush_bio); > + > ci->bio = &flush_bio; > ci->sector_count = 0; > > - /* > - * Empty flush uses a statically initialized bio, as the base for > - * cloning. However, blkg association requires that a bdev is > - * associated with a gendisk, which doesn't happen until the bdev is > - * opened. So, blkg association is done at issue time of the flush > - * rather than when the device is created in alloc_dev(). > - */ > - bio_set_dev(ci->bio, ci->io->md->bdev); > - > BUG_ON(bio_has_data(ci->bio)); > while ((ti = dm_table_get_target(ci->map, target_nr++))) > __send_duplicate_bios(ci, ti, ti->num_flush_bios, NULL); > Ah, thought as much. I've stumbled across this while debugging blk-interposer. Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke Kernel Storage Architect hare@suse.de +49 911 74053 688 SUSE Software Solutions GmbH, Maxfeldstr. 5, 90409 Nürnberg HRB 36809 (AG Nürnberg), Geschäftsführer: Felix Imendörffer