[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e2f8b1d7-78ab-4ef5-bb4f-088d60f7d7fc@kernel.org>
Date: Tue, 30 Jan 2024 08:26:17 +0900
From: Damien Le Moal <dlemoal@...nel.org>
To: Johannes Thumshirn <johannes.thumshirn@....com>,
Naohiro Aota <naohiro.aota@....com>, Johannes Thumshirn <jth@...nel.org>,
Alasdair Kergon <agk@...hat.com>, Mike Snitzer <snitzer@...nel.org>,
Mikulas Patocka <mpatocka@...hat.com>, dm-devel@...ts.linux.dev,
Chris Mason <clm@...com>, Josef Bacik <josef@...icpanda.com>,
David Sterba <dsterba@...e.com>, Jaegeuk Kim <jaegeuk@...nel.org>,
Chao Yu <chao@...nel.org>, Jens Axboe <axboe@...nel.dk>,
Christoph Hellwig <hch@....de>, Sagi Grimberg <sagi@...mberg.me>,
Chaitanya Kulkarni <kch@...dia.com>
Cc: linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-btrfs@...r.kernel.org, linux-f2fs-devel@...ts.sourceforge.net,
linux-block@...r.kernel.org, linux-nvme@...ts.infradead.org
Subject: Re: [PATCH v3 2/5] dm: dm-zoned: guard blkdev_zone_mgmt with noio
scope
On 1/29/24 16:52, Johannes Thumshirn wrote:
> Guard the calls to blkdev_zone_mgmt() with a memalloc_noio scope.
> This helps us getting rid of the GFP_NOIO argument to blkdev_zone_mgmt();
>
> Signed-off-by: Johannes Thumshirn <johannes.thumshirn@....com>
Reviewed-by: Damien Le Moal <dlemoal@...nel.org>
> ---
> drivers/md/dm-zoned-metadata.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/md/dm-zoned-metadata.c b/drivers/md/dm-zoned-metadata.c
> index fdfe30f7b697..165996cc966c 100644
> --- a/drivers/md/dm-zoned-metadata.c
> +++ b/drivers/md/dm-zoned-metadata.c
> @@ -1655,10 +1655,13 @@ static int dmz_reset_zone(struct dmz_metadata *zmd, struct dm_zone *zone)
>
> if (!dmz_is_empty(zone) || dmz_seq_write_err(zone)) {
> struct dmz_dev *dev = zone->dev;
> + unsigned int noio_flag;
>
> + noio_flag = memalloc_noio_save();
> ret = blkdev_zone_mgmt(dev->bdev, REQ_OP_ZONE_RESET,
> dmz_start_sect(zmd, zone),
> - zmd->zone_nr_sectors, GFP_NOIO);
> + zmd->zone_nr_sectors, GFP_KERNEL);
> + memalloc_noio_restore(noio_flag);
> if (ret) {
> dmz_dev_err(dev, "Reset zone %u failed %d",
> zone->id, ret);
>
--
Damien Le Moal
Western Digital Research
Powered by blists - more mailing lists