From: Steve Wise <swise-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW@public.gmane.org>
To: Yann Droneaud <ydroneaud-RlY5vtjFyJ3QT0dZR+AlfA@public.gmane.org>
Cc: "Stefan (metze) Metzmacher"
<metze-eUNUBHrolfbYtjvyW6yDsg@public.gmane.org>,
linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: Is there a way to transfer a rdma connection between userspace processes?
Date: Mon, 15 Oct 2012 10:31:58 -0500 [thread overview]
Message-ID: <507C2C6E.7010507@opengridcomputing.com> (raw)
In-Reply-To: <1350292042.2750.11.camel-vNW8ozRvgWupuGC+iAP0z+TW4wlIGRCZ@public.gmane.org>
On 10/15/2012 4:07 AM, Yann Droneaud wrote:
> Le lundi 15 octobre 2012 à 10:27 +0200, Stefan (metze) Metzmacher a
> écrit :
>> Hi,
>>
>> I'm currently researching how to implement SMBDirect [MS-SMBD]
>> together with the multi channel feature of SMB 3.0 in Samba.
>>
>> As Samba currently uses one process per tcp connection
>> and maintains a lot of in memory state within the process
>> (e.g. for the SMB_VFS modules) it would require a lot of work
>> to change Samba to coordinate two (or more) processes for one logical
>> multi channel connection.
>>
>> My current plan tries to pass the socket fd of new connections
>> (which join an existing multi channel session) via fd-passing to
>> the existing process.
>>
>> Now I'm wondering if this would also be possible with
>> a rdma connection (struct rdma_cm_i ).
>>
> RDMA / verbs ressources are tied to a process (especially Memory
> Registration), but it's ending up in the HCA, which is probably unaware
> of processes.
>
> Additionally, an RDMA_CM connection is not identified by a FD, so this
> kind of Unix trick (FD passing through Unix socket: SCM_RIGHTS) is not
> going to work.
>
> Forking might already be a challenge for a RDMA/verbs application, so I
> don't think that sharing/moving an RDMA_CM connection across different
> processes is supported.
>
> But other people on this list (especially Roland Dreier and Sean Hefty)
> could find a solution.
>
> Regards.
>
fork() support like you need is not there in Linux RDMA verbs. Another
alternative is to fork() before you setup the RDMA connection. IE if a
regular TCP socket is first used to negotiate RDMA mode, then maybe you
could fork() after negotiation but before setting up the RDMA connection
and other resources?
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2012-10-15 15:31 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-15 8:27 Is there a way to transfer a rdma connection between userspace processes? Stefan (metze) Metzmacher
[not found] ` <507BC8EE.2020908-eUNUBHrolfbYtjvyW6yDsg@public.gmane.org>
2012-10-15 9:07 ` Yann Droneaud
[not found] ` <1350292042.2750.11.camel-vNW8ozRvgWupuGC+iAP0z+TW4wlIGRCZ@public.gmane.org>
2012-10-15 15:31 ` Steve Wise [this message]
[not found] ` <507C2C6E.7010507-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW@public.gmane.org>
2012-10-16 14:25 ` Stefan (metze) Metzmacher
[not found] ` <507D6E3C.2050405-eUNUBHrolfbYtjvyW6yDsg@public.gmane.org>
2012-10-16 16:46 ` Stefan (metze) Metzmacher
2012-10-17 19:01 ` Hefty, Sean
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=507C2C6E.7010507@opengridcomputing.com \
--to=swise-7bpotxp6k4+p2yhjcf5u+vpxobypeauw@public.gmane.org \
--cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=metze-eUNUBHrolfbYtjvyW6yDsg@public.gmane.org \
--cc=ydroneaud-RlY5vtjFyJ3QT0dZR+AlfA@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox