Skip to content

Commit f060434

Browse files
authored
Merge pull request #4118 from rhc54/cmr30/notify
Notify all event handlers
2 parents 1a1bf01 + 92419dd commit f060434

File tree

4 files changed

+21
-22
lines changed

4 files changed

+21
-22
lines changed

.gitignore

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,17 @@ opal/mca/pmix/pmix2x/pmix/include/pmix_rename.h
320320
opal/mca/pmix/pmix2x/pmix/include/pmix_version.h
321321
opal/mca/pmix/pmix2x/pmix/src/util/keyval/keyval_lex.c
322322
opal/mca/pmix/pmix2x/pmix/src/util/show_help_lex.c
323+
opal/mca/pmix/pmix2x/pmix/examples/alloc
324+
opal/mca/pmix/pmix2x/pmix/examples/client
325+
opal/mca/pmix/pmix2x/pmix/examples/debugger
326+
opal/mca/pmix/pmix2x/pmix/examples/debuggerd
327+
opal/mca/pmix/pmix2x/pmix/examples/dmodex
328+
opal/mca/pmix/pmix2x/pmix/examples/dynamic
329+
opal/mca/pmix/pmix2x/pmix/examples/fault
330+
opal/mca/pmix/pmix2x/pmix/examples/jctrl
331+
opal/mca/pmix/pmix2x/pmix/examples/pub
332+
opal/mca/pmix/pmix2x/pmix/examples/server
333+
opal/mca/pmix/pmix2x/pmix/examples/tool
323334

324335
opal/tools/opal-checkpoint/opal-checkpoint
325336
opal/tools/opal-checkpoint/opal-checkpoint.1

opal/mca/pmix/pmix2x/pmix/src/event/pmix_event_notification.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -788,8 +788,10 @@ static void _notify_client_event(int sd, short args, void *cbdata)
788788
PMIX_ACQUIRE_OBJECT(cd);
789789

790790
pmix_output_verbose(2, pmix_globals.debug_output,
791-
"pmix_server: _notify_error notifying clients of error %s",
792-
PMIx_Error_string(cd->status));
791+
"pmix_server: _notify_client_event notifying clients of event %s range %s type %s",
792+
PMIx_Error_string(cd->status),
793+
PMIx_Data_range_string(cd->range),
794+
cd->nondefault ? "NONDEFAULT" : "OPEN");
793795

794796
/* we cannot know if everyone who wants this notice has had a chance
795797
* to register for it - the notice may be coming too early. So cache

opal/mca/pmix/pmix2x/pmix2x_server_south.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -546,9 +546,9 @@ int pmix2x_server_notify_event(int status,
546546

547547

548548
rc = pmix2x_convert_opalrc(status);
549-
/* the range is irrelevant here as the server is passing
549+
/* the range must be nonlocal so the server will pass
550550
* the event down to its local clients */
551-
rc = PMIx_Notify_event(rc, &op->p, PMIX_RANGE_LOCAL,
551+
rc = PMIx_Notify_event(rc, &op->p, PMIX_RANGE_SESSION,
552552
pinfo, sz, opcbfunc, op);
553553
if (PMIX_SUCCESS != rc) {
554554
OBJ_RELEASE(op);

orte/mca/state/base/state_base_fns.c

Lines changed: 4 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -547,8 +547,8 @@ static void _send_notification(int status,
547547
}
548548

549549
if (OPAL_ERR_PROC_ABORTED == status) {
550-
/* we will pass four opal_value_t's */
551-
rc = 4;
550+
/* we will pass three opal_value_t's */
551+
rc = 3;
552552
if (ORTE_SUCCESS != (rc = opal_dss.pack(buf, &rc, 1, OPAL_INT))) {
553553
ORTE_ERROR_LOG(rc);
554554
OBJ_RELEASE(buf);
@@ -569,8 +569,8 @@ static void _send_notification(int status,
569569
}
570570
OBJ_DESTRUCT(&kv);
571571
} else {
572-
/* we are going to pass three opal_value_t's */
573-
rc = 3;
572+
/* we are going to pass two opal_value_t's */
573+
rc = 2;
574574
if (ORTE_SUCCESS != (rc = opal_dss.pack(buf, &rc, 1, OPAL_INT))) {
575575
ORTE_ERROR_LOG(rc);
576576
OBJ_RELEASE(buf);
@@ -608,20 +608,6 @@ static void _send_notification(int status,
608608
}
609609
OBJ_DESTRUCT(&kv);
610610

611-
/* mark this as intended for non-default event handlers */
612-
OBJ_CONSTRUCT(&kv, opal_value_t);
613-
kv.key = strdup(OPAL_PMIX_EVENT_NON_DEFAULT);
614-
kv.type = OPAL_BOOL;
615-
kv.data.flag = true;
616-
kvptr = &kv;
617-
if (ORTE_SUCCESS != (rc = opal_dss.pack(buf, &kvptr, 1, OPAL_VALUE))) {
618-
ORTE_ERROR_LOG(rc);
619-
OBJ_DESTRUCT(&kv);
620-
OBJ_RELEASE(buf);
621-
return;
622-
}
623-
OBJ_DESTRUCT(&kv);
624-
625611
/* if the targets are a wildcard, then xcast it to everyone */
626612
if (ORTE_VPID_WILDCARD == target->vpid) {
627613
OBJ_CONSTRUCT(&sig, orte_grpcomm_signature_t);

0 commit comments

Comments
 (0)