[PATCHv2 1/3] nvme: Remove RCU namespace protection

Keith Busch keith.busch at intel.com
Thu Jun 30 07:57:51 PDT 2016


On Wed, Jun 29, 2016 at 11:48:38PM -0700, Christoph Hellwig wrote:
> But we remove it from the list before del_gendisk in
> nvme_remove_invalid_namespaces and nvme_scan_ns_list already.  I guess
> that's fine because we're not going to do I/O on them at this point,

Right, we can safely remove them from the list for those other cases
precisely because they can't do IO anymore.

> but what prevents us form doing this two step removal in
> nvme_remove_namespaces?

If the controller fails during del_gendisk, we have to kill all
the request queues and set capacities to 0 to force del_gendisk to
complete. If the namespace isn't in the ctrl->namespace list, the driver
can't find the namespace to kill.



More information about the Linux-nvme mailing list