1
1
openmpi/ompi/mca/osc
Nathan Hjelm 7589a25377 osc/pt2pt: do not repost receive from request callback
This commit fixes an issue that can occur if a target gets overwhelmed with
requests. This can cause osc/pt2pt to go into deep recursion with a stack
like req_complete_cb -> ompi_osc_pt2pt_callback -> start -> req_complete_cb
-> ... . At small scale this is fine as the recursion depth stays small but
at larger scale we can quickly exhaust the stack processing frag requests.
To fix the issue the request callback now simply puts the request on a
list and returns. The osc/pt2pt progress function then handles the
processing and reposting of the request.

As part of this change osc/pt2pt can now post multiple fragment receive
requests per window. This should help prevent a target from being overwhelmed.

Signed-off-by: Nathan Hjelm <hjelmn@me.com>
2016-08-11 15:33:07 -06:00
..
base osc: use PMPI_* insted of MPI_* 2015-11-20 13:46:19 +09:00
portals4 osc/portals4: Correct an error in an if statement 2016-07-18 13:16:12 +02:00
pt2pt osc/pt2pt: do not repost receive from request callback 2016-08-11 15:33:07 -06:00
rdma osc/rdma: fix bug in CAS 2016-07-11 09:54:23 -06:00
sm opal/thread: clean up and add additional OPAL_THREAD macros 2016-07-28 09:23:14 -06:00
Makefile.am Purge whitespace from the repo 2015-06-23 20:59:57 -07:00
osc.h osc: do not cast way the const modifier when this is not necessary 2015-08-31 10:34:05 +09:00