--- ./source/private_module/adapter/ba/ba_drv.c	2018-04-19 02:57:01.000000000 +0000
+++ ./source/private_module/adapter/ba/ba_drv.c.hotpatch	2021-05-17 12:51:13.000000000 +0000
@@ -2718,23 +2718,23 @@
 {
     uint32_t linkId = INVALID_VALUE32;
     BA_DRV_LINK_S *session = NULL;
-
     linkId = eplEvent->linkId;
     session = BA_GET_DRVLINK(linkId);
-    if (NULL == session)
-    {
+    if (NULL == session) {
         DBG_LogError(LOG_ID_BA_00C2, "Can not find drvlink(0x%08x).", linkId);
         return;
     }
-
     if (BA_EPL_EVENT_UP == baSessionFlagIniUp(session))
     {
         BDM_PRINT_LIMIT_PERIOD(60*HZ, 1, DBG_LOG_WARNING, LOG_ID_BA_00C3,
                                         "Link(0x%08x) is already ready to report to epl.", linkId);
+        baSessionReportEvent2Epl(session, FALSE, eplLinkEvent);
+	    baCopyToSession(session, eplEvent);
+    	baSessionSetIniFlag(session);
+        baSessionReportEvent2Epl(session, TRUE, eplLinkEvent);
         BA_PUT_DRVLINK(linkId);
         return;
     }
-
     baCopyToSession(session, eplEvent);
     baSessionSetIniFlag(session);
     if (BA_SESSION_UP == baSessionGetStat(session))
