Re: [PATCH 1/1] NVMe: Do not take nsid while a passthrough IO command is being issued via a block device file descriptor

Christoph Hellwig
2015-01-23T17:27:50Z

On Fri, Jan 23, 2015 at 04:22:02PM +0000, Keith Busch wrote:
> The namespace id should be enforced on block devices, but is there a
> problem allowing arbitrary commands through the management char device?
> I have a need for a pure passthrough, but the proposed patch requires
> a matching namespace id all the time.
>
> I wrote and tested the one below to override nsid on block devices,
> but doesn't require a visible namespace through the management device.

Allowing requests to differetn namespaces through the admin interface
doesn't sound too horrible in general, but I still don't like your patch
below. Instead of allocating another queue that allows arbitrary nsids
we should simply look up the namespace when sent through the admin device,
and still reject it if the namespace isn't valid. If a namespaces
is marked hidden we should still create a device for it in Linux,
as that whole concept of hiding a namespace is silly.