]> git.openfabrics.org - ~shefty/librdmacm.git/log
~shefty/librdmacm.git
11 years agonew
Sean Hefty [Thu, 23 Aug 2012 18:20:08 +0000 (11:20 -0700)]
new

11 years agonew
Sean Hefty [Thu, 23 Aug 2012 18:20:08 +0000 (11:20 -0700)]
new

11 years agorspreload: Avoid rsocket calls until after fork
Sean Hefty [Thu, 23 Aug 2012 18:20:08 +0000 (11:20 -0700)]
rspreload: Avoid rsocket calls until after fork

When an rsocket call is made before an application calls fork(),
the forked applications can hang.  This can be seen by running
netserver and two netperf clients simultaneously.  The second
netperf client will eventually stop performing data transfers.

LD_PRELOAD=librspreload.so netserver -D

LD_PRELOAD=librspreload.so netperf -v2 -c -C -H 192.168.0.101 -l30
LD_PRELOAD=librspreload.so netperf -v2 -c -C -H 192.168.0.101 -l30

It's not clear what the specific problem is.  The best guess is
that libibverbs or the provider library (e.g. libmlx4) perform
some initialization, such as mmap'ing device memory, which does not
work when fork is called.

As a work-around, avoid calling rsocket routines until immediately
before they are needed.  This allows the process to fork before
the libraries are initialized.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
11 years agopop
Sean Hefty [Thu, 23 Aug 2012 18:13:10 +0000 (11:13 -0700)]
pop

11 years agopop
Sean Hefty [Thu, 23 Aug 2012 18:13:10 +0000 (11:13 -0700)]
pop

11 years agorefresh
Sean Hefty [Thu, 23 Aug 2012 18:12:27 +0000 (11:12 -0700)]
refresh

11 years agorefresh
Sean Hefty [Thu, 23 Aug 2012 18:12:27 +0000 (11:12 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Thu, 23 Aug 2012 18:12:27 +0000 (11:12 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Thu, 23 Aug 2012 18:12:27 +0000 (11:12 -0700)]
refresh (create temporary patch)

11 years agoRefresh of dbg-fork
Sean Hefty [Thu, 23 Aug 2012 18:12:27 +0000 (11:12 -0700)]
Refresh of dbg-fork

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 22:40:43 +0000 (15:40 -0700)]
refresh

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 22:40:43 +0000 (15:40 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 22:40:43 +0000 (15:40 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 22:40:43 +0000 (15:40 -0700)]
refresh (create temporary patch)

11 years agoRefresh of dbg-fork
Sean Hefty [Wed, 22 Aug 2012 22:40:43 +0000 (15:40 -0700)]
Refresh of dbg-fork

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 22:38:46 +0000 (15:38 -0700)]
refresh

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 22:38:46 +0000 (15:38 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 22:38:46 +0000 (15:38 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 22:38:46 +0000 (15:38 -0700)]
refresh (create temporary patch)

11 years agoRefresh of dbg-fork
Sean Hefty [Wed, 22 Aug 2012 22:38:45 +0000 (15:38 -0700)]
Refresh of dbg-fork

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 22:36:51 +0000 (15:36 -0700)]
refresh

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 22:36:51 +0000 (15:36 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 22:36:51 +0000 (15:36 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 22:36:51 +0000 (15:36 -0700)]
refresh (create temporary patch)

11 years agoRefresh of dbg-fork
Sean Hefty [Wed, 22 Aug 2012 22:36:51 +0000 (15:36 -0700)]
Refresh of dbg-fork

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 22:30:51 +0000 (15:30 -0700)]
refresh

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 22:30:51 +0000 (15:30 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 22:30:51 +0000 (15:30 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 22:30:51 +0000 (15:30 -0700)]
refresh (create temporary patch)

11 years agoRefresh of dbg-fork
Sean Hefty [Wed, 22 Aug 2012 22:30:51 +0000 (15:30 -0700)]
Refresh of dbg-fork

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 22:03:30 +0000 (15:03 -0700)]
refresh

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 22:03:30 +0000 (15:03 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 22:03:30 +0000 (15:03 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 22:03:30 +0000 (15:03 -0700)]
refresh (create temporary patch)

11 years agoRefresh of dbg-fork
Sean Hefty [Wed, 22 Aug 2012 22:03:29 +0000 (15:03 -0700)]
Refresh of dbg-fork

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 21:33:18 +0000 (14:33 -0700)]
refresh

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 21:33:18 +0000 (14:33 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 21:33:18 +0000 (14:33 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 21:33:18 +0000 (14:33 -0700)]
refresh (create temporary patch)

11 years agoRefresh of dbg-fork
Sean Hefty [Wed, 22 Aug 2012 21:33:18 +0000 (14:33 -0700)]
Refresh of dbg-fork

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 21:27:11 +0000 (14:27 -0700)]
refresh

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 21:27:11 +0000 (14:27 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 21:27:11 +0000 (14:27 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 21:27:11 +0000 (14:27 -0700)]
refresh (create temporary patch)

11 years agoRefresh of dbg-fork
Sean Hefty [Wed, 22 Aug 2012 21:27:11 +0000 (14:27 -0700)]
Refresh of dbg-fork

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 21:18:49 +0000 (14:18 -0700)]
refresh

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 21:18:49 +0000 (14:18 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 21:18:49 +0000 (14:18 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 21:18:49 +0000 (14:18 -0700)]
refresh (create temporary patch)

11 years agoRefresh of dbg-fork
Sean Hefty [Wed, 22 Aug 2012 21:18:49 +0000 (14:18 -0700)]
Refresh of dbg-fork

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 21:18:02 +0000 (14:18 -0700)]
refresh

11 years agorefresh
Sean Hefty [Wed, 22 Aug 2012 21:18:02 +0000 (14:18 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 21:18:02 +0000 (14:18 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Wed, 22 Aug 2012 21:18:02 +0000 (14:18 -0700)]
refresh (create temporary patch)

11 years agoRefresh of dbg-fork
Sean Hefty [Wed, 22 Aug 2012 21:18:02 +0000 (14:18 -0700)]
Refresh of dbg-fork

11 years agorefresh
Sean Hefty [Tue, 21 Aug 2012 21:02:05 +0000 (14:02 -0700)]
refresh

11 years agorefresh
Sean Hefty [Tue, 21 Aug 2012 21:02:05 +0000 (14:02 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Tue, 21 Aug 2012 21:02:05 +0000 (14:02 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Tue, 21 Aug 2012 21:02:05 +0000 (14:02 -0700)]
refresh (create temporary patch)

11 years agoRefresh of dbg-fork
Sean Hefty [Tue, 21 Aug 2012 21:02:04 +0000 (14:02 -0700)]
Refresh of dbg-fork

11 years agodebug fork issue
Sean Hefty [Tue, 21 Aug 2012 20:49:59 +0000 (13:49 -0700)]
debug fork issue

11 years agodebug fork issue
Sean Hefty [Tue, 21 Aug 2012 20:49:59 +0000 (13:49 -0700)]
debug fork issue

11 years agodebug fork issue
Sean Hefty [Tue, 21 Aug 2012 20:49:59 +0000 (13:49 -0700)]
debug fork issue

11 years agodebug fork issue
Sean Hefty [Tue, 21 Aug 2012 20:49:59 +0000 (13:49 -0700)]
debug fork issue

11 years agodebug fork issue
Sean Hefty [Tue, 21 Aug 2012 20:49:59 +0000 (13:49 -0700)]
debug fork issue

11 years agodebug fork issue
Sean Hefty [Tue, 21 Aug 2012 20:49:59 +0000 (13:49 -0700)]
debug fork issue

11 years agodebug fork issue
Sean Hefty [Tue, 21 Aug 2012 20:49:59 +0000 (13:49 -0700)]
debug fork issue

11 years agodebug fork issue
Sean Hefty [Tue, 21 Aug 2012 20:49:59 +0000 (13:49 -0700)]
debug fork issue

11 years agodebug fork issue
Sean Hefty [Tue, 21 Aug 2012 20:49:59 +0000 (13:49 -0700)]
debug fork issue

11 years agonew
Sean Hefty [Tue, 21 Aug 2012 20:49:59 +0000 (13:49 -0700)]
new

11 years agonew
Sean Hefty [Tue, 21 Aug 2012 20:49:59 +0000 (13:49 -0700)]
new

11 years agodebug fork issue
Sean Hefty [Tue, 21 Aug 2012 20:49:59 +0000 (13:49 -0700)]
debug fork issue

11 years agocommit
Sean Hefty [Mon, 20 Aug 2012 20:16:33 +0000 (13:16 -0700)]
commit

11 years agocommit
Sean Hefty [Mon, 20 Aug 2012 20:16:33 +0000 (13:16 -0700)]
commit

11 years agorefresh
Sean Hefty [Mon, 20 Aug 2012 20:00:19 +0000 (13:00 -0700)]
refresh

11 years agorefresh
Sean Hefty [Mon, 20 Aug 2012 20:00:19 +0000 (13:00 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Mon, 20 Aug 2012 19:58:25 +0000 (12:58 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Mon, 20 Aug 2012 19:58:25 +0000 (12:58 -0700)]
refresh (create temporary patch)

11 years agoRefresh of rs-fix
Sean Hefty [Mon, 20 Aug 2012 19:58:25 +0000 (12:58 -0700)]
Refresh of rs-fix

11 years agorefresh
Sean Hefty [Mon, 20 Aug 2012 19:54:56 +0000 (12:54 -0700)]
refresh

11 years agorefresh
Sean Hefty [Mon, 20 Aug 2012 19:54:56 +0000 (12:54 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Mon, 20 Aug 2012 19:54:56 +0000 (12:54 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Mon, 20 Aug 2012 19:54:56 +0000 (12:54 -0700)]
refresh (create temporary patch)

11 years agoRefresh of rs-fix
Sean Hefty [Mon, 20 Aug 2012 19:54:56 +0000 (12:54 -0700)]
Refresh of rs-fix

11 years agorefresh
Sean Hefty [Mon, 20 Aug 2012 19:20:40 +0000 (12:20 -0700)]
refresh

11 years agorefresh
Sean Hefty [Mon, 20 Aug 2012 19:20:40 +0000 (12:20 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Mon, 20 Aug 2012 19:20:40 +0000 (12:20 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Mon, 20 Aug 2012 19:20:40 +0000 (12:20 -0700)]
refresh (create temporary patch)

11 years agoRefresh of rs-fix
Sean Hefty [Mon, 20 Aug 2012 19:20:40 +0000 (12:20 -0700)]
Refresh of rs-fix

11 years agorefresh
Sean Hefty [Mon, 20 Aug 2012 17:11:41 +0000 (10:11 -0700)]
refresh

11 years agorefresh
Sean Hefty [Mon, 20 Aug 2012 17:11:41 +0000 (10:11 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Mon, 20 Aug 2012 17:11:41 +0000 (10:11 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Mon, 20 Aug 2012 17:11:41 +0000 (10:11 -0700)]
refresh (create temporary patch)

11 years agoRefresh of rs-fix
Sean Hefty [Mon, 20 Aug 2012 17:11:40 +0000 (10:11 -0700)]
Refresh of rs-fix

11 years agorefresh
Sean Hefty [Mon, 20 Aug 2012 16:12:46 +0000 (09:12 -0700)]
refresh

11 years agorefresh
Sean Hefty [Mon, 20 Aug 2012 16:12:46 +0000 (09:12 -0700)]
refresh

11 years agorefresh (create temporary patch)
Sean Hefty [Mon, 20 Aug 2012 16:12:46 +0000 (09:12 -0700)]
refresh (create temporary patch)

11 years agorefresh (create temporary patch)
Sean Hefty [Mon, 20 Aug 2012 16:12:46 +0000 (09:12 -0700)]
refresh (create temporary patch)

11 years agoRefresh of rs-fix
Sean Hefty [Mon, 20 Aug 2012 16:12:46 +0000 (09:12 -0700)]
Refresh of rs-fix

11 years agorspreload: Fix checks in fork_active/passive
Sean Hefty [Mon, 20 Aug 2012 16:06:49 +0000 (09:06 -0700)]
rspreload: Fix checks in fork_active/passive

Fix passing in wrong variable to rconnect(), check state instead
of type, and move call to getpeername until after we are sure than
the normal socket connection has completed.

Problems pointed out by Sridhar Samudrala <sri@us.ibm.com>

Signed-off-by: Sean Hefty <sean.hefty@intel.com>