Hi Thang,

See my comment inline [Thien].

Best Regards,
Thien

-----Original Message-----
From: Thang Duc Nguyen <thang.d.ngu...@dektech.com.au> 
Sent: Thursday, July 13, 2023 6:13 AM
To: Thien Minh Huynh <thien.m.hu...@dektech.com.au>; Dat Tran Quoc Phan 
<dat.tq.p...@dektech.com.au>
Cc: opensaf-devel@lists.sourceforge.net; Thang Duc Nguyen 
<thang.d.ngu...@dektech.com.au>
Subject: [PATCH 1/1] smf: Fix handling of MDS events in smfnd [#3340]

The global smfd_dest (in cd struct) shall be restored with MDS event NCSMDS_UP 
and NCSMDS_NEW_ACTIVE (is set to 0 with event NCSMDS_DOWN).
---
 src/smf/smfnd/smfnd_mds.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/smf/smfnd/smfnd_mds.c b/src/smf/smfnd/smfnd_mds.c index 
5f8ebb59b..4fba6669b 100644
--- a/src/smf/smfnd/smfnd_mds.c
+++ b/src/smf/smfnd/smfnd_mds.c
@@ -240,6 +240,15 @@ static uint32_t mds_svc_event(struct ncsmds_callback_info 
*info)
        switch (svc_evt->i_change) {
        case NCSMDS_NEW_ACTIVE:
                LOG_NO("MDS %s: NCSMDS_NEW_ACTIVE", __FUNCTION__);
[Thien]: This is duplicate with NCSMDS_UP. Because NCSMDS_NEW_ACTIVE has no 
break, it will fall through NCSMDS_UP.
This fix might not be different #2723.

+               /* Catch the vdest of SMFD*/
+               if (m_MDS_DEST_IS_AN_ADEST(svc_evt->i_dest))
+                       return NCSCC_RC_SUCCESS;
+               osaf_mutex_lock_ordie(&cb->cb_lock);
+               cb->smfd_dest = svc_evt->i_dest;
+               osaf_mutex_unlock_ordie(&cb->cb_lock);
+               LOG_NO("MDS %s: NCSMDS_SVC_ID_SMFD "
+                       "dest = 0x%" PRIx64,
+                       __FUNCTION__, svc_evt->i_dest);
        case NCSMDS_UP:
                if (NCSMDS_SVC_ID_SMFA == svc_evt->i_svc_id) {
                        osaf_mutex_lock_ordie(&cb->cb_lock);
--
2.25.1



_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to