From: Doug Ledford <dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Haggai Eran <haggaie-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Jason Gunthorpe
<jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
Subject: Re: [PATCH v7 0/4] Add network namespace support in the RDMA-CM
Date: Wed, 28 Oct 2015 12:33:35 -0400 [thread overview]
Message-ID: <5630F8DF.60203@redhat.com> (raw)
In-Reply-To: <1445516411-17327-1-git-send-email-haggaie-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
[-- Attachment #1: Type: text/plain, Size: 4096 bytes --]
On 10/22/2015 08:20 AM, Haggai Eran wrote:
> Hi Doug,
>
> I've rebased the network namespaces patches over your 4.4 tree.
Thanks, it went in cleanly this time. Applied.
> Regards,
> Haggai
>
> Changes from v6:
> - rebased over k.o/for-4.4
> - use init_net when no netdev is found (RoCE and AF_IB)
>
> Changes from v5:
> - removed patches that got in as part of the cleanup series.
>
> RDMA-CM uses IP based addressing and routing to setup RDMA connections between
> hosts. Currently, all of the IP interfaces and addresses used by the RDMA-CM
> must reside in the init_net namespace. This restricts the usage of containers
> with RDMA to only work with host network namespace (aka the kernel init_net NS
> instance).
>
> This patchset allows using network namespaces with the RDMA-CM.
>
> Each RDMA-CM id keeps a reference to a network namespace.
>
> This reference is based on the process network namespace at the time of the
> creation of the object or inherited from the listener.
>
> This network namespace is used to perform all IP and network related
> operations. Specifically, the local device lookup, as well as the remote GID
> address resolution are done in the context of the RDMA-CM object's namespace.
> This allows outgoing connections to reach the right target, even if the same
> IP address exists in multiple network namespaces. This can happen if each
> network namespace resides on a different P_Key.
>
> Additionally, the network namespace is used to split the listener port space
> tables. From the user point of view, each network namespace has a unique,
> completely independent tables for its port spaces. This allows running multiple
> instances of a single service on the same machine, using containers.
>
> The functionality introduced by this series would come into play when the
> transport is InfiniBand and IPoIB interfaces are assigned to each namespace.
> Multiple IPoIB interfaces can be created and assigned to different RDMA-CM
> capable containers, for example using pipework [1].
>
> The patches apply against Doug's for-4.4 tree.
>
> The patchset is structured as follows:
>
> Patch 1 is a relatively trivial API extension, requiring the callers
> of certain ib_addr functions to provide a network namespace, as needed.
>
> Patches 2-4 add proper namespace support to the RDMA-CM module. This
> includes adding multiple port space tables, adding a network namespace
> parameter, and finally retrieving the namespace from the creating process.
>
> [1] https://github.com/jpetazzo/pipework/
>
> Guy Shapiro (3):
> IB/addr: Pass network namespace as a parameter
> IB/cma: Add support for network namespaces
> IB/ucma: Take the network namespace from the process
>
> Haggai Eran (1):
> IB/cma: Separate port allocation to network namespaces
>
> drivers/infiniband/core/addr.c | 17 +--
> drivers/infiniband/core/cma.c | 129 +++++++++++++++------
> drivers/infiniband/core/ucma.c | 4 +-
> drivers/infiniband/ulp/iser/iser_verbs.c | 2 +-
> drivers/infiniband/ulp/isert/ib_isert.c | 2 +-
> .../staging/lustre/lnet/klnds/o2iblnd/o2iblnd.h | 4 +-
> include/rdma/ib_addr.h | 16 ++-
> include/rdma/rdma_cm.h | 6 +-
> net/9p/trans_rdma.c | 4 +-
> net/rds/ib.c | 2 +-
> net/rds/ib_cm.c | 2 +-
> net/rds/iw.c | 2 +-
> net/rds/iw_cm.c | 2 +-
> net/rds/rdma_transport.c | 4 +-
> net/sunrpc/xprtrdma/svc_rdma_transport.c | 4 +-
> net/sunrpc/xprtrdma/verbs.c | 3 +-
> 16 files changed, 142 insertions(+), 61 deletions(-)
>
--
Doug Ledford <dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
GPG KeyID: 0E572FDD
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 884 bytes --]
prev parent reply other threads:[~2015-10-28 16:33 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-22 12:20 [PATCH v7 0/4] Add network namespace support in the RDMA-CM Haggai Eran
[not found] ` <1445516411-17327-1-git-send-email-haggaie-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2015-10-22 12:20 ` [PATCH v7 1/4] IB/addr: Pass network namespace as a parameter Haggai Eran
2015-10-22 12:20 ` [PATCH v7 2/4] IB/cma: Separate port allocation to network namespaces Haggai Eran
2015-10-22 12:20 ` [PATCH v7 3/4] IB/cma: Add support for " Haggai Eran
2015-10-22 12:20 ` [PATCH v7 4/4] IB/ucma: Take the network namespace from the process Haggai Eran
2015-10-28 16:33 ` Doug Ledford [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5630F8DF.60203@redhat.com \
--to=dledford-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=haggaie-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org \
--cc=jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org \
--cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.