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
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to