]> git.baikalelectronics.ru Git - kernel.git/commit
nvme: don't hold nvmf_transports_rwsem for more than transport lookups
authorJohannes Thumshirn <jthumshirn@suse.de>
Fri, 1 Jun 2018 07:11:20 +0000 (09:11 +0200)
committerJens Axboe <axboe@kernel.dk>
Fri, 8 Jun 2018 18:51:10 +0000 (12:51 -0600)
commit044cfb0d57e707cb4bdbc2b0dc75ba5b8a8fff99
tree1ec47a51a7aa9cfdd5acc59f1970b2523fb76ae4
parentff6bcd63c57b85333f9bb76421ea6c0e938a3a9e
nvme: don't hold nvmf_transports_rwsem for more than transport lookups

Only take nvmf_transports_rwsem when doing a lookup of registered
transports, so that a blocking ->create_ctrl doesn't prevent other
actions on /dev/nvme-fabrics.

Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de>
[hch: increased lock hold time a bit to be safe, added a comment
 and updated the changelog]
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/nvme/host/fabrics.c
drivers/nvme/host/fabrics.h