diff options
author | Christoph Hellwig <hch@lst.de> | 2022-11-01 18:00:43 +0300 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2022-11-02 17:35:34 +0300 |
commit | cd50f9b24726e9e195a0682c8d8d952396d57aef (patch) | |
tree | d1ec84d215d6ca19d6c63ac64dfc65389c0f242c /drivers/nvme/host/apple.c | |
parent | 6bcd5089ee1302e9ad7072ca0866f0c5a1158359 (diff) | |
download | linux-cd50f9b24726e9e195a0682c8d8d952396d57aef.tar.xz |
nvme: split nvme_kill_queues
nvme_kill_queues does two things:
1) mark the gendisk of all namespaces dead
2) unquiesce all I/O queues
These used to be be intertwined due to block layer issues, but aren't
any more. So move the unquiscing of the I/O queues into the callers,
and rename the rest of the function to the now more descriptive
nvme_mark_namespaces_dead.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Link: https://lore.kernel.org/r/20221101150050.3510-8-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'drivers/nvme/host/apple.c')
-rw-r--r-- | drivers/nvme/host/apple.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/nvme/host/apple.c b/drivers/nvme/host/apple.c index a89b06a7099f..6c09703ffe92 100644 --- a/drivers/nvme/host/apple.c +++ b/drivers/nvme/host/apple.c @@ -1153,7 +1153,8 @@ out: nvme_change_ctrl_state(&anv->ctrl, NVME_CTRL_DELETING); nvme_get_ctrl(&anv->ctrl); apple_nvme_disable(anv, false); - nvme_kill_queues(&anv->ctrl); + nvme_mark_namespaces_dead(&anv->ctrl); + nvme_start_queues(&anv->ctrl); if (!queue_work(nvme_wq, &anv->remove_work)) nvme_put_ctrl(&anv->ctrl); } |