osaf/services/saf/plmsv/plms/plms_proc.c | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
Aug 27 0:32:50.265452 osafplmd [12007:plms_common_mds.c:0081] ER INVALID MSG
FORMAT IN ENC
When PLMS receives an MDS event, it does not look at the node from which the
event came. When the standby PLMS/PLMS_HRB comes online, the active PLMS gets
a MDS_UP for the standby PLMS_HRB, and blindly sets its hrb_dest to it. This is
wrong.
Solution is to only process MDS events from the local node.
diff --git a/osaf/services/saf/plmsv/plms/plms_proc.c
b/osaf/services/saf/plmsv/plms/plms_proc.c
--- a/osaf/services/saf/plmsv/plms/plms_proc.c
+++ b/osaf/services/saf/plmsv/plms/plms_proc.c
@@ -2084,8 +2084,11 @@ void plms_process_mds_info_event(PLMS_EV
break;
case NCSMDS_UP:
if (mds_info->svc_id == NCSMDS_SVC_ID_PLMS_HRB) {
- cb->hrb_dest = plm_evt->req_evt.mds_info.dest;
- LOG_ER("Received MDS UP for PLMS_HRB");
+ /* ignore up from other nodes */
+ if (mds_info->node_id == cb->node_id) {
+ cb->hrb_dest =
plm_evt->req_evt.mds_info.dest;
+ LOG_NO("Received MDS UP for PLMS_HRB");
+ }
}
break;
case NCSMDS_DOWN:
------------------------------------------------------------------------------
Slashdot TV.
Video for Nerds. Stuff that matters.
http://tv.slashdot.org/
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel