[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