]> git.baikalelectronics.ru Git - kernel.git/commit
nvme: Remove ADMIN_ONLY state
authorKeith Busch <kbusch@kernel.org>
Tue, 3 Sep 2019 15:22:24 +0000 (09:22 -0600)
committerKeith Busch <kbusch@kernel.org>
Mon, 14 Oct 2019 14:21:44 +0000 (23:21 +0900)
commit42bd33e4e992a1a462351008a3bda34e650050c4
treef8bc91bbdb157ba902b4572eb5acd3aef5c2a443
parentd1e08c344e09cd0e9b28bf302ee4524b1b355a82
nvme: Remove ADMIN_ONLY state

The admin only state was intended to fence off actions that don't
apply to a non-IO capable controller. The only actual user of this is
the scan_work, and pci was the only transport to ever set this state.
The consequence of having this state is placing an additional burden on
every other action that applies to both live and admin only controllers.

Remove the admin only state and place the admin only burden on the only
place that actually cares: scan_work.

This also prepares to make it easier to temporarily pause a LIVE state
so that we don't need to remember which state the controller had been in
prior to the pause.

Tested-by: Edmund Nadolski <edmund.nadolski@intel.com>
Reviewed-by: James Smart <james.smart@broadcom.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Keith Busch <kbusch@kernel.org>
drivers/nvme/host/core.c
drivers/nvme/host/fabrics.h
drivers/nvme/host/nvme.h
drivers/nvme/host/pci.c