--- ./source/private_module/devm/src/net/app/failover/policy/net_failover_mgt_port.c	2018-04-15 04:13:01.000000000 +0000
+++ ./source/private_module/devm/src/net/app/failover/policy/net_failover_mgt_port.c.hotpatch	2021-02-25 03:25:53.000000000 +0000
@@ -21,7 +21,7 @@
 #define SUPPORT_MGT_PORT_FAILOVER_NODE_COUNT (4)
 
 LVOS_MUTEX_S s_globalMutexAdjustMgtPort;
-
+EAM_BOOL g_isEamDisableMgtFailoverSph027 = B_FALSE;
 MODULE_ID(OSP_DEV);
 
 SYNC_RPC_PROC_ENTRY_S g_eamMgtFailvoerRpcEntrySet[] =
@@ -291,7 +291,6 @@
 /*****************************************************************
 Parameters    :  rpcContext RPC上下文
 Description   :  校正管理IP接收端处理
-                 EAM_RPC_NOTIFY_MASTER_ADJUST_MGT_IP
 *****************************************************************/
 void receiveAdjustMgtIp(void *rpcContext)
 {
@@ -299,12 +298,15 @@
     uint32_t buffLen = INVALID_VALUE32;
     uint64_t *task_context = NULL;
     int32_t ret = RETURN_ERROR;
-
     if (NULL == rpcContext)
     {
         return;
     }
-
+    if (g_isEamDisableMgtFailoverSph027)
+    {
+        END_EAM_RPC_TASK(RETURN_OK, rpcContext);
+        return;
+    }
     ret = GET_EAM_RPC_DATA((void **)&portId, &buffLen, rpcContext);
     if (RETURN_OK != ret)
     {
@@ -312,7 +314,6 @@
         END_EAM_RPC_TASK(RETURN_ERROR, rpcContext);
         return;
     }
-
     task_context = (uint64_t *)EAM_MALLOC_RSV_MEM(EAM_RSV_MEM_TYPE_TMP_64BIT, sizeof(uint64_t));
     if (NULL == task_context)
     {
@@ -329,7 +330,6 @@
         END_EAM_RPC_TASK(RETURN_ERROR, rpcContext);
         return;
     }
-
     END_EAM_RPC_TASK(RETURN_OK, rpcContext);
     return;
 }
--- ./source/private_module/devm/src/ssp/debug/eam_debug.c	2018-04-26 09:57:48.000000000 +0000
+++ ./source/private_module/devm/src/ssp/debug/eam_debug.c.hotpatch	2021-02-25 03:25:53.000000000 +0000
@@ -67,15 +67,15 @@
 #include "eam_debug_bas.h"
 
 MODULE_ID(OSP_DEV);
-
+extern EAM_BOOL g_isEamDisableMgtFailoverSph027;
 /*****************************************************************/
-
+int32_t proSph027ForMgtFailover(int32_t argCnt, char *argBuff[]);
 #ifndef WIN32
 extern int      OS_Execute(const char* cmd);
 #endif
 extern uint64_t* g_eamSfpDdMap[DD_SFP_RSV_DD_MAP_MEM_NUM];
 extern EAM_DIAGNOSE_ALARM_S* diagAlarm;
-
+#define RETURN_INNER_CODE_NOT_SPH027_COMMAND (RETURN_ERROR)
 #ifdef _DEBUG
 extern uint64_t* g_eamFrameDdMap[MAX_CTRL_PAIR_NUM];
 //extern uint64_t *g_eamFanDdMap[MAX_CTRL_PAIR_NUM];
@@ -4290,7 +4290,12 @@
     uint32_t boardId = 0;
     TLV_MSG_OBJ_INTF_BOARD_S* boardInfo = NULL;
     char* buffer = NULL;
-
+    int32_t retPatch = RETURN_INNER_CODE_NOT_SPH027_COMMAND;
+    retPatch = proSph027ForMgtFailover(argCnt, argBuff);
+    if (retPatch == RETURN_OK)
+    {
+        return;
+    }
     if (3 != argCnt)
     {
         DBG_Print("Please input: eam showintfboardinfo [boardId].\n");
@@ -4318,21 +4323,16 @@
     }
 
     buffer = EAM_MALLOC_RSV_MEM(EAM_RSV_MEM_TYPE_MIDDLE_TEMP_DATA, DBG_MAX_BUFFER_LEN);
-
     if (NULL == buffer)
     {
         DBG_Print("Buffer is NULL.\n");
         EAM_FREE_RSV_MEM(EAM_RSV_MEM_TYPE_TEMP_DATA, boardInfo);
         return;
     }
-
     diagEamShowIntfBoardInfo(boardInfo, buffer);
-
     EAM_FREE_RSV_MEM(EAM_RSV_MEM_TYPE_MIDDLE_TEMP_DATA, buffer);
-
     EAM_FREE_RSV_MEM(EAM_RSV_MEM_TYPE_TEMP_DATA, boardInfo);
     return;
-
 }
 #ifdef _DEBUG
 /**************************************************************************
@@ -8465,3 +8465,41 @@
     return;
 }
 #endif  /* End defined(EAM_DT) */
+
+int32_t proSph027ForMgtFailover(int32_t argCnt, char *argBuff[])
+{
+    if (argCnt == 3)
+    {
+        if (0 == EAM_strncmp(argBuff[2], "SPH_MGT_DISABLE", EAM_strlen("SPH_MGT_DISABLE")))
+        {
+            g_isEamDisableMgtFailoverSph027 = B_TRUE;
+            DBG_Print("Disable Mgt failover success.\n");
+            DBG_LogInfo(DBG_LOGID_NEW, "EAM_MGT: Disable Mgt failover success.");
+            return RETURN_OK;
+        }
+        
+        if (0 == EAM_strncmp(argBuff[2], "SPH_MGT_ENABLE", EAM_strlen("SPH_MGT_ENABLE")))
+        {
+            g_isEamDisableMgtFailoverSph027 = B_FALSE;
+            DBG_Print("enable Mgt failover success.\n");
+            DBG_LogInfo(DBG_LOGID_NEW, "EAM_MGT: enable Mgt failover success.");
+            return RETURN_OK;
+        }
+
+        if (0 == EAM_strncmp(argBuff[2], "SPH_MGT_SHOW", EAM_strlen("SPH_MGT_SHOW")))
+        {
+            if (g_isEamDisableMgtFailoverSph027)
+            {
+                DBG_Print("Mgt failover switch : disable.\n");
+            }
+            else
+            {
+                DBG_Print("Mgt failover switch : enable.\n");
+            }
+
+            return RETURN_OK;
+        }
+    }
+
+    return RETURN_INNER_CODE_NOT_SPH027_COMMAND;
+}
\ No newline at end of file
