Re: [PATCH v2 10/10] nvmet: Optionally use PCI P2P memory

From: Logan Gunthorpe
Date: Thu Mar 01 2018 - 14:10:36 EST



Wouldn't it all be simpler if the p2p_dev resolution would be private
to the namespace?

So is adding some all the namespaces in a subsystem must comply to
using p2p? Seems a little bit harsh if its not absolutely needed. Would
be nice to export a subsystems between two ports (on two HCAs, across
NUMA nodes) where the home node (primary path) would use p2p and
failover would use host memory...

Can you help me understand why this is absolutely not feasible?

Yes, it would simplify things. However, as best as I can tell, when we allocate memory we don't know what namespace it will be used for. If there is a way, I could probably rework it so there's a P2P device per namespace.

Can you show me how we'd know the namespace to use in nvmet_rdma_map_sgl_keyed()?

Thanks,

Logan