> diff --git a/drivers/nvme/host/fabrics.c b/drivers/nvme/host/fabrics.c > index 7ae732a77fe8..febf82639b40 100644 > --- a/drivers/nvme/host/fabrics.c > +++ b/drivers/nvme/host/fabrics.c > @@ -957,16 +957,17 @@ nvmf_create_ctrl(struct device *dev, const char *buf, > size_t count) > > down_read(&nvmf_transports_rwsem); > ops = nvmf_lookup_transport(opts); > + up_read(&nvmf_transports_rwsem);
And what protects us from the transport getting unregister right here from anothet thread waiting to acquire nvmf_transports_rwsem?