Commit c4ecaf2c authored by David Goodell's avatar David Goodell
Browse files

[svn-r7007] bugfix: ch3:sock threading was broken by earlier fine-grained commits

Due to the tangled mess of header include ordering, a convenience #ifdef was
checked too early in another header when it was not yet defined.  This led to a
null implementation of MPIDI_CH3I_PROGRESS_WAKEUP in ch3:sock, even though this
is essential functionality for sock.

No reviewer.
parent 1c821cb2
......@@ -99,13 +99,16 @@ MPIDI_CH3I_Progress_state;
#define MPIDI_CH3_PROGRESS_STATE_DECL MPIDI_CH3I_Progress_state ch;
#ifdef MPICH_IS_THREADED
#define MPIDI_CH3I_PROGRESS_WAKEUP \
if (MPIDI_CH3I_progress_blocked == TRUE && MPIDI_CH3I_progress_wakeup_signalled == FALSE) \
{ \
MPIDI_CH3I_progress_wakeup_signalled = TRUE; \
MPIDI_CH3I_Progress_wakeup(); \
}
/* MPICH_IS_THREADED isn't defined yet (handled by mpiimplthread.h) */
#if (MPICH_THREAD_LEVEL == MPI_THREAD_MULTIPLE)
#define MPIDI_CH3I_PROGRESS_WAKEUP \
do { \
if (MPIDI_CH3I_progress_blocked == TRUE && MPIDI_CH3I_progress_wakeup_signalled == FALSE) \
{ \
MPIDI_CH3I_progress_wakeup_signalled = TRUE; \
MPIDI_CH3I_Progress_wakeup(); \
} \
} while (0)
#endif
#endif /* !defined(MPICH_MPIDI_CH3_PRE_H_INCLUDED) */
......@@ -374,6 +374,7 @@ int MPIDI_CH3I_Progress_finalize(void)
#define FCNAME MPIDI_QUOTE(FUNCNAME)
void MPIDI_CH3I_Progress_wakeup(void)
{
MPIU_DBG_MSG(CH3_OTHER,TYPICAL,"progress_wakeup called");
MPIDU_Sock_wakeup(MPIDI_CH3I_sock_set);
}
#endif
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment