Casey Chen
b990585f9b
nvme-pci: do not call nvme_dev_remove_admin from nvme_remove
...
[ Upstream commit 251ef6f71b ]
nvme_dev_remove_admin could free dev->admin_q and the admin_tagset
while they are being accessed by nvme_dev_disable(), which can be called
by nvme_reset_work via nvme_remove_dead_ctrl.
Commit cb4bfda62a ("nvme-pci: fix hot removal during error handling")
intended to avoid requests being stuck on a removed controller by killing
the admin queue. But the later fix c8e9e9b764 ("nvme-pci: unquiesce
admin queue on shutdown"), together with nvme_dev_disable(dev, true)
right before nvme_dev_remove_admin() could help dispatch requests and
fail them early, so we don't need nvme_dev_remove_admin() any more.
Fixes: cb4bfda62a ("nvme-pci: fix hot removal during error handling")
Signed-off-by: Casey Chen <cachen@purestorage.com >
Reviewed-by: Keith Busch <kbusch@kernel.org >
Signed-off-by: Christoph Hellwig <hch@lst.de >
Signed-off-by: Sasha Levin <sashal@kernel.org >
2021-07-28 14:35:34 +02:00
..
2020-12-30 11:53:44 +01:00
2021-07-20 16:05:49 +02:00
2021-03-04 11:38:02 +01:00
2020-12-30 11:54:09 +01:00
2021-07-19 09:44:59 +02:00
2021-07-19 09:44:52 +02:00
2021-03-04 11:38:00 +01:00
2021-06-03 09:00:34 +02:00
2021-07-20 16:05:49 +02:00
2021-07-19 09:44:54 +02:00
2021-07-14 16:55:42 +02:00
2021-05-26 12:06:55 +02:00
2021-07-20 16:05:49 +02:00
2021-07-19 09:44:43 +02:00
2021-07-19 09:44:59 +02:00
2021-03-25 09:04:16 +01:00
2021-07-14 16:56:13 +02:00
2021-05-14 09:50:16 +02:00
2021-07-14 16:56:54 +02:00
2021-03-04 11:38:15 +01:00
2021-07-14 16:56:11 +02:00
2021-07-20 16:05:38 +02:00
2021-07-25 14:36:20 +02:00
2021-07-14 16:56:00 +02:00
2021-07-19 09:45:00 +02:00
2021-04-07 15:00:11 +02:00
2021-07-25 14:36:17 +02:00
2021-07-19 09:44:59 +02:00
2021-07-20 16:05:42 +02:00
2021-07-20 16:05:43 +02:00
2021-07-25 14:36:21 +02:00
2021-07-14 16:56:01 +02:00
2021-05-14 09:50:28 +02:00
2021-07-14 16:55:59 +02:00
2021-07-14 16:56:08 +02:00
2021-07-20 16:05:46 +02:00
2021-07-20 16:05:46 +02:00
2021-05-14 09:50:05 +02:00
2021-03-04 11:38:21 +01:00
2020-12-03 10:00:23 +01:00
2021-07-20 16:05:39 +02:00
2021-07-19 09:44:53 +02:00
2021-07-20 16:05:44 +02:00
2021-06-03 09:00:46 +02:00
2021-07-20 16:05:43 +02:00
2021-07-19 09:45:01 +02:00
2021-06-23 14:42:49 +02:00
2021-07-19 09:44:38 +02:00
2021-07-20 16:05:45 +02:00
2021-01-27 11:55:22 +01:00
2021-03-04 11:37:42 +01:00
2021-07-14 16:56:53 +02:00
2021-07-19 09:45:02 +02:00
2021-07-19 09:45:02 +02:00
2021-07-25 14:36:14 +02:00
2021-07-14 16:55:53 +02:00
2021-07-20 16:05:42 +02:00
2021-07-20 16:05:50 +02:00
2021-07-19 09:44:59 +02:00
2021-07-14 16:56:47 +02:00
2021-07-28 14:35:34 +02:00
2021-05-14 09:50:32 +02:00
2021-04-21 13:00:55 +02:00
2021-07-28 14:35:34 +02:00
2021-07-19 09:45:00 +02:00
2021-07-14 16:56:46 +02:00
2021-03-04 11:37:27 +01:00
2021-07-20 16:05:52 +02:00
2021-07-14 16:56:08 +02:00
2021-07-20 16:05:46 +02:00
2021-07-19 09:45:02 +02:00
2021-07-14 16:56:00 +02:00
2021-07-20 16:05:50 +02:00
2020-12-30 11:53:53 +01:00
2021-06-23 14:42:45 +02:00
2021-07-28 14:35:34 +02:00
2021-05-26 12:06:52 +02:00
2021-04-14 08:42:12 +02:00
2021-07-14 16:56:09 +02:00
2021-07-20 16:05:50 +02:00
2021-07-25 14:36:11 +02:00
2021-05-19 10:13:02 +02:00
2021-07-25 14:36:16 +02:00
2021-07-20 16:05:42 +02:00
2021-07-25 14:36:16 +02:00
2020-12-30 11:53:47 +01:00
2021-07-25 14:36:15 +02:00
2021-07-14 16:56:47 +02:00
2021-07-14 16:56:10 +02:00
2021-03-04 11:38:40 +01:00
2021-07-14 16:56:21 +02:00
2021-07-20 16:05:45 +02:00
2021-07-14 16:56:53 +02:00
2021-06-10 13:39:21 +02:00
2021-07-25 14:36:17 +02:00
2021-07-14 16:56:44 +02:00
2021-07-20 16:05:42 +02:00
2021-05-26 12:06:52 +02:00
2021-07-25 14:36:18 +02:00
2021-07-20 16:05:53 +02:00
2021-07-14 16:56:50 +02:00
2021-05-11 14:47:12 +02:00
2021-07-20 16:05:45 +02:00
2021-05-11 14:47:11 +02:00
2020-12-30 11:54:00 +01:00
2021-07-14 16:56:41 +02:00
2021-07-20 16:05:39 +02:00
2021-07-20 16:05:51 +02:00
2021-07-11 12:53:31 +02:00
2020-12-02 04:09:56 -05:00