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 8B9D1C433F5 for ; Wed, 6 Apr 2022 08:53:05 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 11E896B0072; Wed, 6 Apr 2022 04:52:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 0A7BD6B0073; Wed, 6 Apr 2022 04:52:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E3C016B0074; Wed, 6 Apr 2022 04:52:54 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0195.hostedemail.com [216.40.44.195]) by kanga.kvack.org (Postfix) with ESMTP id CE8426B0072 for ; Wed, 6 Apr 2022 04:52:54 -0400 (EDT) Received: from smtpin24.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id 7E2F9183DC8D3 for ; Wed, 6 Apr 2022 08:52:44 +0000 (UTC) X-FDA: 79325838648.24.8587465 Received: from esa2.hgst.iphmx.com (esa2.hgst.iphmx.com [68.232.143.124]) by imf12.hostedemail.com (Postfix) with ESMTP id AA7C440014 for ; Wed, 6 Apr 2022 08:52:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1649235163; x=1680771163; h=message-id:date:mime-version:subject:to:cc:references: from:in-reply-to:content-transfer-encoding; bh=LFM3dJ4XtmmQmpjm/ADKwYliPf/iPacGMSt9/3x5IFU=; b=Y/ntLYDbSxQhp2BIIxxl0WkXfN7ZG6KWdKkyCgeNer3yAm33QW5Os+Jl FDbckzGIeH6J1fxLBCCU7sARtfx+dW6nhjsSOBxyCxW/d1hhjUoipfDHA 12Ok86ZPvH+NiVbzPQ81wFFxGeN7WxrMcn5VHrwOLpytevkyGRFJHLZNM pNkifxbHbehynHt5Gesu0lBTOS+u+I9B3eLYD7Y0HpftwRHHvyX2urO8I Kxw4VEPFfS9lDnOcgbjtOLBLmkj2z0uhzh5g5kjrggqZetN9nPXf9IE9F ScNEyhbAeHQSOvT74aGSy4KMzP+lsP66KVML5R+O3fDthVPwijzmLktq0 Q==; X-IronPort-AV: E=Sophos;i="5.90,239,1643644800"; d="scan'208";a="301390446" Received: from h199-255-45-15.hgst.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 06 Apr 2022 16:52:42 +0800 IronPort-SDR: +UfBFVgZSs5f+Ued47k0DoFtBngMcDYfkutuaVaq4yChRQJ+TiTY/ONk4isV3OItT2nMmfBHfa HuvVYZwZeCA9KrkjQ05qBQq+bz916JGdPlbUrRBrjqQ1x/5b6VTq08huU982NDfnIDNAp7v4nW BEJiEO7gWQsx1PIhniVyNNq8JMFHh0s5P1i4lT4IiQtbMQPq4htfL5j5PfQczCDziiSdoY/7HK CD72fACQjyAmN+QQZTZr3IgbWz51SndONCDo5NeFu1kG03gskGyusNtsGLJR37tfTkkyoM1Ycx R8jLOgyI4cdMf1UDrZl0b4P2 Received: from uls-op-cesaip01.wdc.com ([10.248.3.36]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 06 Apr 2022 01:23:24 -0700 IronPort-SDR: wSia9BKz/pwzSbHdmFbEy8L6F7JkKZQK50aMqgUlR7mX1c/nrPMtHRfTMUaHHBIAXUiRA6Cq+I YsDICabQsiYg97udJaVh0+I661BAn1adX48opXGQGXSK+3Rx8VDyd7In42pEWP/s8ZvLGn6F+9 aA5oekl7TkCIOifNlGQzAhImsvGQ855cYkRPyEnX6p7IKGe442JO0qDThbq6Ewg5LtMOxCvyRj YYeHvzaOV0Ftadw3jvkT6x7BPpBwTnCYA7SbK5CW01tt4BtBJTE67VTofZzN5DylPe20GdYC8W ROw= WDCIronportException: Internal Received: from usg-ed-osssrv.wdc.com ([10.3.10.180]) by uls-op-cesaip01.wdc.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 06 Apr 2022 01:52:43 -0700 Received: from usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTP id 4KYJDn28cfz1SVp8 for ; Wed, 6 Apr 2022 01:52:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d= opensource.wdc.com; h=content-transfer-encoding:content-type :in-reply-to:organization:from:references:to:content-language :subject:user-agent:mime-version:date:message-id; s=dkim; t= 1649235160; x=1651827161; bh=LFM3dJ4XtmmQmpjm/ADKwYliPf/iPacGMSt 9/3x5IFU=; b=FzUociJ5h7WAQTsg6/of1WcVO/OsM8WZr8TGwq4XsiCjPsWYnIG 8/w+gKZQabfM5/6lPmJQreKk5Ou6wFCFKuKzU34LNEBfiEEQgQdKgaFRiQjCbS+v bXmYOK12GNp/Ja0XBlu9I1309M6iplipC0iSH4zUASq/4DY1Z1ntJWZZ2gnz7v04 gr+tHwiyI12IKqfvshI8zep4+bgj/F03PH6lDam0sCy+54uxyIAUOpes7fa1mbqW oKbTS+GZl8C4hDtpg8QtlcOVicbeOAAs2w8xnnXnZGy/42U80yMH8z7K4uMfNY4W C4OWYxx5B6+JAZVIxV0TMfw3Lljnnr2SA9w== X-Virus-Scanned: amavisd-new at usg-ed-osssrv.wdc.com Received: from usg-ed-osssrv.wdc.com ([127.0.0.1]) by usg-ed-osssrv.wdc.com (usg-ed-osssrv.wdc.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id J5BP9rVoqMZq for ; Wed, 6 Apr 2022 01:52:40 -0700 (PDT) Received: from [10.149.53.254] (washi.fujisawa.hgst.com [10.149.53.254]) by usg-ed-osssrv.wdc.com (Postfix) with ESMTPSA id 4KYJDg4WyPz1Rvlx; Wed, 6 Apr 2022 01:52:35 -0700 (PDT) Message-ID: Date: Wed, 6 Apr 2022 17:52:34 +0900 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH 14/27] block: add a bdev_max_zone_append_sectors helper Content-Language: en-US To: Christoph Hellwig , Jens Axboe Cc: dm-devel@redhat.com, linux-xfs@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-um@lists.infradead.org, linux-block@vger.kernel.org, drbd-dev@lists.linbit.com, nbd@other.debian.org, ceph-devel@vger.kernel.org, virtualization@lists.linux-foundation.org, xen-devel@lists.xenproject.org, linux-bcache@vger.kernel.org, linux-raid@vger.kernel.org, linux-mmc@vger.kernel.org, linux-mtd@lists.infradead.org, linux-nvme@lists.infradead.org, linux-s390@vger.kernel.org, linux-scsi@vger.kernel.org, target-devel@vger.kernel.org, linux-btrfs@vger.kernel.org, linux-ext4@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net, cluster-devel@redhat.com, jfs-discussion@lists.sourceforge.net, linux-nilfs@vger.kernel.org, ntfs3@lists.linux.dev, ocfs2-devel@oss.oracle.com, linux-mm@kvack.org References: <20220406060516.409838-1-hch@lst.de> <20220406060516.409838-15-hch@lst.de> From: Damien Le Moal Organization: Western Digital Research In-Reply-To: <20220406060516.409838-15-hch@lst.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Stat-Signature: 91ei8f8qdhg7zno3efps5f9zip9nuiz1 Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=wdc.com header.s=dkim.wdc.com header.b="Y/ntLYDb"; dkim=pass header.d=opensource.wdc.com header.s=dkim header.b=FzUociJ5; spf=pass (imf12.hostedemail.com: domain of "prvs=0880ca2a2=damien.lemoal@opensource.wdc.com" designates 68.232.143.124 as permitted sender) smtp.mailfrom="prvs=0880ca2a2=damien.lemoal@opensource.wdc.com"; dmarc=pass (policy=quarantine) header.from=opensource.wdc.com X-Rspam-User: X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: AA7C440014 X-HE-Tag: 1649235163-765079 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 4/6/22 15:05, Christoph Hellwig wrote: > Add a helper to check the max supported sectors for zone append based on > the block_device instead of having to poke into the block layer internal > request_queue. > > Signed-off-by: Christoph Hellwig > --- > drivers/nvme/target/zns.c | 3 +-- > fs/zonefs/super.c | 3 +-- > include/linux/blkdev.h | 6 ++++++ > 3 files changed, 8 insertions(+), 4 deletions(-) > > diff --git a/drivers/nvme/target/zns.c b/drivers/nvme/target/zns.c > index e34718b095504..82b61acf7a72b 100644 > --- a/drivers/nvme/target/zns.c > +++ b/drivers/nvme/target/zns.c > @@ -34,8 +34,7 @@ static int validate_conv_zones_cb(struct blk_zone *z, > > bool nvmet_bdev_zns_enable(struct nvmet_ns *ns) > { > - struct request_queue *q = ns->bdev->bd_disk->queue; > - u8 zasl = nvmet_zasl(queue_max_zone_append_sectors(q)); > + u8 zasl = nvmet_zasl(bdev_max_zone_append_sectors(ns->bdev)); > struct gendisk *bd_disk = ns->bdev->bd_disk; > int ret; > > diff --git a/fs/zonefs/super.c b/fs/zonefs/super.c > index 3614c7834007d..7a63807b736c4 100644 > --- a/fs/zonefs/super.c > +++ b/fs/zonefs/super.c > @@ -678,13 +678,12 @@ static ssize_t zonefs_file_dio_append(struct kiocb *iocb, struct iov_iter *from) > struct inode *inode = file_inode(iocb->ki_filp); > struct zonefs_inode_info *zi = ZONEFS_I(inode); > struct block_device *bdev = inode->i_sb->s_bdev; > - unsigned int max; > + unsigned int max = bdev_max_zone_append_sectors(bdev); > struct bio *bio; > ssize_t size; > int nr_pages; > ssize_t ret; > > - max = queue_max_zone_append_sectors(bdev_get_queue(bdev)); > max = ALIGN_DOWN(max << SECTOR_SHIFT, inode->i_sb->s_blocksize); > iov_iter_truncate(from, max); > > diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h > index a433798c3343e..f8c50b77543eb 100644 > --- a/include/linux/blkdev.h > +++ b/include/linux/blkdev.h > @@ -1188,6 +1188,12 @@ static inline unsigned int queue_max_zone_append_sectors(const struct request_qu > return min(l->max_zone_append_sectors, l->max_sectors); > } > > +static inline unsigned int > +bdev_max_zone_append_sectors(struct block_device *bdev) > +{ > + return queue_max_zone_append_sectors(bdev_get_queue(bdev)); > +} > + > static inline unsigned queue_logical_block_size(const struct request_queue *q) > { > int retval = 512; Looks good. Acked-by: Damien Le Moal -- Damien Le Moal Western Digital Research