On Fri, May 4, 2018, 21:09 Walker, Benjamin <benjamin.walker@intel.com> wrote:
On Fri, 2018-05-04 at 17:56 +0000, Andrey Kuzmin wrote:
> Thanks for the quick turnaround, Daniel.
>
> On Fri, May 4, 2018, 20:48 Verkamp, Daniel <daniel.verkamp@intel.com> wrote:
> > Hi Andrey,
> >
> > Do you mean on the host (initiator) side, bdev/nvme?  When you are
> > connecting to a NVMe-oF target with the NVMe bdev (either via the [Nvme]
> > configuration file section or the construct_nvme_bdev RPC method), you are
> > specifying the address to a subsystem, and all namespaces in that subsystem
> > will be exposed as bdevs.  There is currently no way to specify just a
> > single namespace within the subsystem, but we could probably add this if
> > there is a reasonable use case that requires it.
>
> I don't think it as strong as required, but the case that has triggered my
> question above was trying to run bdevperf with its target device specification
> against a specific namespace at thee nvmf target.
>
> As is (with effectively just the controller specified), it actually runs
> prerry well, but I assume it does so against all namespaces the target exports
> via the specified subsystem.

When you connect to a controller with the NVMe-oF host, it will create a
separate bdev for each namespace automatically. If you do something like this:

[Nvme]
  TransportID "trtype:RDMA <stuff>" Nvme0

Then it will create one bdev per namespace with the names Nvme0n1, Nvme0n2, etc.

However, when you go to run bdevperf, there isn't actually a way to say to just
run against one of those namespaces.

Exactly.

That's probably a reasonable addition to
the tool.

(Also, we should consider promoting the tool from a test tool in test/bdev to an
example in examples/bdev.)

I have indeed found it pretty useful for testng bdevs.

Regards,
Andrey

>
> Regards,
> Andrey
> > If you are talking about the target side, you can configure namespaces to
> > have a particular ID using the optional second parameter to the Namespace
> > line in the [SubsystemN] config sections, or via the optional namespace.nsid
> > parameter to the nvmf_subsystem_add_ns RPC method.
> >
> > Thanks,
> > -- Daniel
> >
> > > -----Original Message-----
> > > From: SPDK [mailto:spdk-bounces@lists.01.org] On Behalf Of Andrey Kuzmin
> > > Sent: Friday, May 4, 2018 10:35 AM
> > > To: Storage Performance Development Kit <spdk@lists.01.org>
> > > Subject: [SPDK] Nvmf target namespace specification
> > >
> > > Spdk nvmf docs suggest nvmf targets to be specified via
> > > traddr/addrfam/traddr/trsvcid tuple. Is there any way to specify the
> > > target controller namespace as well?
> > >
> > > Regards,
> > > Andrey
> > > _______________________________________________
> > > SPDK mailing list
> > > SPDK@lists.01.org
> > > https://lists.01.org/mailman/listinfo/spdk
> > _______________________________________________
> > SPDK mailing list
> > SPDK@lists.01.org
> > https://lists.01.org/mailman/listinfo/spdk
>
> --
> Regards,
> Andrey
> _______________________________________________
> SPDK mailing list
> SPDK@lists.01.org
> https://lists.01.org/mailman/listinfo/spdk
_______________________________________________
SPDK mailing list
SPDK@lists.01.org
https://lists.01.org/mailman/listinfo/spdk
--

Regards,
Andrey