summaryrefslogtreecommitdiffstats
path: root/include/acpi
diff options
context:
space:
mode:
authorIsrael Rukshin <israelr@mellanox.com>2020-03-24 17:29:43 +0200
committerKeith Busch <kbusch@kernel.org>2020-03-26 04:51:56 +0900
commitce1518139e6976cf19c133b555083354fdb629b8 (patch)
treedc8909f0292fbeef5042d15bfbdd82eac2ff5c5e /include/acpi
parent726612b6b8259afa41d265a2722991c87f059223 (diff)
downloadlinux-stable-ce1518139e6976cf19c133b555083354fdb629b8.tar.gz
linux-stable-ce1518139e6976cf19c133b555083354fdb629b8.tar.bz2
linux-stable-ce1518139e6976cf19c133b555083354fdb629b8.zip
nvme: Fix controller creation races with teardown flow
Calling nvme_sysfs_delete() when the controller is in the middle of creation may cause several bugs. If the controller is in NEW state we remove delete_controller file and don't delete the controller. The user will not be able to use nvme disconnect command on that controller again, although the controller may be active. Other bugs may happen if the controller is in the middle of create_ctrl callback and nvme_do_delete_ctrl() starts. For example, freeing I/O tagset at nvme_do_delete_ctrl() before it was allocated at create_ctrl callback. To fix all those races don't allow the user to delete the controller before it was fully created. Signed-off-by: Israel Rukshin <israelr@mellanox.com> Reviewed-by: Max Gurtovoy <maxg@mellanox.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Keith Busch <kbusch@kernel.org>
Diffstat (limited to 'include/acpi')
0 files changed, 0 insertions, 0 deletions