Hi.

I didn't have a chance to check this but i believe that the following file descriptors need to be closed:

struct ibv_context {
       struct ibv_device      *device;
       struct ibv_context_ops  ops;
int cmd_fd; <-------- (i'm sure that this need is the one) int async_fd; <-------- (i think that you can skip this one....)
       int                     num_comp_vectors;
       pthread_mutex_t         mutex;
       void                   *abi_compat;
       struct ibv_xrc_ops     *xrc_ops;
};


Dotan

Tang, Changqing wrote:
When a process fork/exec, isn't QP destroyed automatically ? If the QP is 
destroyed, then
RDMA operation is based on QP connection and should fail.

Also how do I set FD_CLOEXEC ? which fd in which structure ?


--CQ


-----Original Message-----
From: Daniel Noe [mailto:[EMAIL PROTECTED]
Sent: Thursday, March 27, 2008 11:39 PM
To: Roland Dreier
Cc: Tang, Changqing; [email protected]
Subject: Re: [ofa-general] QP connection healthy detection
problem with fork/exec

Roland Dreier wrote:
I think the problem is that exec() does not clean everything up.
AFAIK exec doesn't close open file descriptors so there's
no way for
the kernel uverbs module to know that it should clean up.
There is a file descriptor flag that can be set with fcntl():
FD_CLOEXEC

If this flag is set on an fd, the kernel closes that file
descriptor on execve().

Otherwise, the file descriptor remains open.

Cheers,
Dan

--
Dan Noe ([EMAIL PROTECTED])
Software Engineer
Lamprey Networks, Inc.

_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general


_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to