Skip to content

Commit f7e0a54

Browse files
Christoph Hellwigkeithbusch
authored andcommitted
nvme-multipath: use atomic queue limits API for stacking limits
Switch to the queue_limits_* helpers to stack the bdev limits, which also includes updating the readahead settings. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Keith Busch <kbusch@kernel.org>
1 parent c5be5df commit f7e0a54

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

drivers/nvme/host/core.c

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2188,6 +2188,8 @@ static int nvme_update_ns_info(struct nvme_ns *ns, struct nvme_ns_info *info)
21882188
}
21892189

21902190
if (!ret && nvme_ns_head_multipath(ns->head)) {
2191+
struct queue_limits lim;
2192+
21912193
blk_mq_freeze_queue(ns->head->disk->queue);
21922194
if (unsupported)
21932195
ns->head->disk->flags |= GENHD_FL_HIDDEN;
@@ -2196,10 +2198,11 @@ static int nvme_update_ns_info(struct nvme_ns *ns, struct nvme_ns_info *info)
21962198
set_capacity_and_notify(ns->head->disk, get_capacity(ns->disk));
21972199
set_disk_ro(ns->head->disk, nvme_ns_is_readonly(ns, info));
21982200
nvme_mpath_revalidate_paths(ns);
2199-
blk_stack_limits(&ns->head->disk->queue->limits,
2200-
&ns->queue->limits, 0);
22012201

2202-
disk_update_readahead(ns->head->disk);
2202+
lim = queue_limits_start_update(ns->head->disk->queue);
2203+
queue_limits_stack_bdev(&lim, ns->disk->part0, 0,
2204+
ns->head->disk->disk_name);
2205+
ret = queue_limits_commit_update(ns->head->disk->queue, &lim);
22032206
blk_mq_unfreeze_queue(ns->head->disk->queue);
22042207
}
22052208

0 commit comments

Comments
 (0)