This commit as part of #3095 updates the error string with
pattern "FCTRL:*Error[*]", in order to help grep-ing the
error in mds debug log.
---
 src/mds/mds_tipc_fctrl_intf.cc   | 59 +++++++++++++++++++++++++---------------
 src/mds/mds_tipc_fctrl_portid.cc | 10 ++++---
 2 files changed, 43 insertions(+), 26 deletions(-)

diff --git a/src/mds/mds_tipc_fctrl_intf.cc b/src/mds/mds_tipc_fctrl_intf.cc
index 8018064..e7f53ed 100644
--- a/src/mds/mds_tipc_fctrl_intf.cc
+++ b/src/mds/mds_tipc_fctrl_intf.cc
@@ -93,7 +93,7 @@ void tmr_exp_cbk(void* uarg) {
     // send to fctrl thread
     if (m_NCS_IPC_SEND(&mbx_events, new Event(timer->type_),
         NCS_IPC_PRIORITY_HIGH) != NCSCC_RC_SUCCESS) {
-      m_MDS_LOG_ERR("FCTRL: Failed to send msg to mbx_events\n");
+      m_MDS_LOG_ERR("FCTRL: Error[Failed to send msg to mbx_events]");
     }
   }
 }
@@ -130,7 +130,9 @@ uint32_t process_flow_event(const Event& evt) {
       rc = portid->ReceiveData(evt.mseq_, evt.mfrag_,
             evt.fseq_, evt.svc_id_);
     } else {
-      m_MDS_LOG_ERR("PortId not found for evt:%d", (int)evt.type_);
+      m_MDS_LOG_ERR("FCTRL: [me] <-- [node:%x, ref:%u], "
+          "RcvEvt[evt:%d], Error[PortId not found]",
+          evt.id_.node, evt.id_.ref, (int)evt.type_);
     }
   } else {
     if (evt.type_ == Event::Type::kEvtRcvData) {
@@ -169,7 +171,7 @@ uint32_t process_all_events(void) {
 
     if (pollres == -1) {
       if (errno == EINTR) continue;
-      m_MDS_LOG_ERR("FCTRL: poll() failed:%s", strerror(errno));
+      m_MDS_LOG_ERR("FCTRL: poll() failed, Error[%s]", strerror(errno));
       break;
     }
 
@@ -212,18 +214,21 @@ uint32_t create_ncs_task(void *task_hdl) {
   int prio_val = ((max_prio - min_prio) * 0.87);
 
   if (m_NCS_IPC_CREATE(&mbx_events) != NCSCC_RC_SUCCESS) {
-    m_MDS_LOG_ERR("m_NCS_IPC_CREATE failed");
+    m_MDS_LOG_ERR("FCTRL: m_NCS_IPC_CREATE failed, Error[%s]",
+        strerror(errno));
     return NCSCC_RC_FAILURE;
   }
   if (m_NCS_IPC_ATTACH(&mbx_events) != NCSCC_RC_SUCCESS) {
-    m_MDS_LOG_ERR("m_NCS_IPC_ATTACH failed");
+    m_MDS_LOG_ERR("FCTRL: m_NCS_IPC_ATTACH failed, Error[%s]",
+        strerror(errno));
     m_NCS_IPC_RELEASE(&mbx_events, nullptr);
     return NCSCC_RC_FAILURE;
   }
   if (ncs_task_create((NCS_OS_CB)process_all_events, 0,
           "OSAF_MDS", prio_val, policy, NCS_MDTM_STACKSIZE,
           &task_hdl) != NCSCC_RC_SUCCESS) {
-    m_MDS_LOG_ERR("FCTRL: ncs_task_create() failed\n");
+    m_MDS_LOG_ERR("FCTRL: ncs_task_create(), Error[%s]",
+        strerror(errno));
     m_NCS_IPC_RELEASE(&mbx_events, nullptr);
     return NCSCC_RC_FAILURE;
   }
@@ -247,7 +252,8 @@ uint32_t mds_tipc_fctrl_initialize(int dgramsock, struct 
tipc_portid id,
 
   if (create_ncs_task(&p_task_hdl) !=
       NCSCC_RC_SUCCESS) {
-    m_MDS_LOG_ERR("FCTRL: create_ncs_task() failed\n");
+    m_MDS_LOG_ERR("FCTRL: create_ncs_task() failed, Error[%s]",
+        strerror(errno));
     return NCSCC_RC_FAILURE;
   }
   is_fctrl_enabled = true;
@@ -263,7 +269,8 @@ uint32_t mds_tipc_fctrl_shutdown(void) {
   portid_map_mutex.lock();
 
   if (ncs_task_release(p_task_hdl) != NCSCC_RC_SUCCESS) {
-    m_MDS_LOG_ERR("FCTRL: Stop of the Created Task-failed:\n");
+    m_MDS_LOG_ERR("FCTRL: Stop of the Created Task-failed, Error[%s]",
+        strerror(errno));
   }
 
   m_NCS_IPC_DETACH(&mbx_events, nullptr, nullptr);
@@ -291,7 +298,8 @@ uint32_t mds_tipc_fctrl_sndqueue_capable(struct tipc_portid 
id,
 
   TipcPortId *portid = portid_lookup(id);
   if (portid == nullptr) {
-    m_MDS_LOG_ERR("FCTRL: PortId not found [node:%x, ref:%u] line:%u",
+    m_MDS_LOG_ERR("FCTRL: [me] --> [node:%x, ref:%u], "
+        "[line:%u], Error[PortId not found]",
         id.node, id.ref, __LINE__);
     rc = NCSCC_RC_FAILURE;
   } else {
@@ -316,7 +324,8 @@ uint32_t mds_tipc_fctrl_trysend(const uint8_t *buffer, 
uint16_t len,
 
   TipcPortId *portid = portid_lookup(id);
   if (portid == nullptr) {
-    m_MDS_LOG_ERR("FCTRL: PortId not found [node:%x, ref:%u] line:%u",
+    m_MDS_LOG_ERR("FCTRL: [me] --> [node:%x, ref:%u], "
+        "[line:%u], Error[PortId not found]",
         id.node, id.ref, __LINE__);
     rc = NCSCC_RC_FAILURE;
   } else {
@@ -420,7 +429,8 @@ uint32_t mds_tipc_fctrl_drop_data(uint8_t *buffer, uint16_t 
len,
             new Event(Event::Type::kEvtSendChunkAck, id, ack.svc_id_,
                 header.mseq_, header.mfrag_, ack.acked_fseq_, ack.chunk_size_),
             NCS_IPC_PRIORITY_HIGH) != NCSCC_RC_SUCCESS) {
-          m_MDS_LOG_ERR("FCTRL: Failed to send msg to mbx_events\n");
+          m_MDS_LOG_ERR("FCTRL: Failed to send msg to mbx_events, Error[%s]",
+              strerror(errno));
           return NCSCC_RC_FAILURE;
         }
         return NCSCC_RC_SUCCESS;
@@ -434,7 +444,8 @@ uint32_t mds_tipc_fctrl_drop_data(uint8_t *buffer, uint16_t 
len,
           new Event(Event::Type::kEvtDropData, id, data.svc_id_,
               header.mseq_, header.mfrag_, header.fseq_),
           NCS_IPC_PRIORITY_HIGH) != NCSCC_RC_SUCCESS) {
-        m_MDS_LOG_ERR("FCTRL: Failed to send msg to mbx_events\n");
+        m_MDS_LOG_ERR("FCTRL: Failed to send msg to mbx_events, Error[%s]",
+            strerror(errno));
         return NCSCC_RC_FAILURE;
       }
       return NCSCC_RC_SUCCESS;
@@ -462,13 +473,10 @@ uint32_t mds_tipc_fctrl_rcv_data(uint8_t *buffer, 
uint16_t len,
             new Event(Event::Type::kEvtRcvChunkAck, id, ack.svc_id_,
                 header.mseq_, header.mfrag_, ack.acked_fseq_, ack.chunk_size_),
                 NCS_IPC_PRIORITY_HIGH) != NCSCC_RC_SUCCESS) {
-          m_MDS_LOG_ERR("FCTRL: Failed to send msg to mbx_events\n");
+          m_MDS_LOG_ERR("FCTRL: Failed to send msg to mbx_events, Error[%s]",
+              strerror(errno));
         }
-        // return NCSCC_RC_FAILURE, so the tipc receiving thread (legacy) will
-        // skip this data msg
-        return NCSCC_RC_FAILURE;
-      }
-      if (header.msg_type_ == Nack::kNackMsgType) {
+      } else if (header.msg_type_ == Nack::kNackMsgType) {
         // receive nack message
         Nack nack;
         nack.Decode(buffer);
@@ -477,12 +485,17 @@ uint32_t mds_tipc_fctrl_rcv_data(uint8_t *buffer, 
uint16_t len,
             new Event(Event::Type::kEvtRcvNack, id, nack.svc_id_,
                 header.mseq_, header.mfrag_, nack.nacked_fseq_),
                 NCS_IPC_PRIORITY_HIGH) != NCSCC_RC_SUCCESS) {
-          m_MDS_LOG_ERR("FCTRL: Failed to send msg to mbx_events\n");
+          m_MDS_LOG_ERR("FCTRL: Failed to send msg to mbx_events, Error[%s]",
+              strerror(errno));
         }
-        // return NCSCC_RC_FAILURE, so the tipc receiving thread (legacy) will
-        // skip this data msg
-        return NCSCC_RC_FAILURE;
+      } else {
+        m_MDS_LOG_ERR("FCTRL: [me] <-- [node:%x, ref:%u], "
+            "[msg_type:%u], Error[not supported message type]",
+            id.node, id.ref, header.msg_type_);
       }
+      // return NCSCC_RC_FAILURE, so the tipc receiving thread (legacy) will
+      // skip this data msg
+      return NCSCC_RC_FAILURE;
     } else {
       // receive data message
       DataMessage data;
@@ -490,6 +503,8 @@ uint32_t mds_tipc_fctrl_rcv_data(uint8_t *buffer, uint16_t 
len,
       // todo: skip mcast/bcast, revisit
       if ((data.snd_type_ == MDS_SENDTYPE_BCAST ||
           data.snd_type_ == MDS_SENDTYPE_RBCAST) && is_mcast_enabled) {
+        m_MDS_LOG_NOTIFY("FCTRL: Skip fseq inspection for BCAST/RBCAST message"
+            "[fseq:%u]", header.fseq_);
         return NCSCC_RC_SUCCESS;
       }
       portid_map_mutex.lock();
diff --git a/src/mds/mds_tipc_fctrl_portid.cc b/src/mds/mds_tipc_fctrl_portid.cc
index 8235265..24a7e2a 100644
--- a/src/mds/mds_tipc_fctrl_portid.cc
+++ b/src/mds/mds_tipc_fctrl_portid.cc
@@ -161,7 +161,7 @@ uint32_t TipcPortId::Send(uint8_t* data, uint16_t length) {
   if (send_len == length) {
     rc = NCSCC_RC_SUCCESS;
   } else {
-    m_MDS_LOG_ERR("sendto() err :%s", strerror(errno));
+    m_MDS_LOG_ERR("FCTRL: sendto() failed, Error[%s]", strerror(errno));
     rc = NCSCC_RC_FAILURE;
   }
   return rc;
@@ -208,8 +208,9 @@ bool TipcPortId::ReceiveCapable(uint16_t sending_len) {
       // Too many msgs are not acked by receiver while in txprob state
       // disable flow control
       state_ = State::kDisabled;
-      m_MDS_LOG_ERR("FCTRL: [node:%x, ref:%u] --> Disabled, %" PRIu64
-          ", %u, %" PRIu64, id_.node, id_.ref, sndwnd_.nacked_space_,
+      m_MDS_LOG_ERR("FCTRL: me --> [node:%x, ref:%u], [nacked:%" PRIu64
+          ", len:%u, rcv_buf_size:%" PRIu64 "], Warning[kTxProb -> kDisabled]",
+          id_.node, id_.ref, sndwnd_.nacked_space_,
           sending_len, rcv_buf_size_);
       return true;
     } else if (state_ == State::kEnabled) {
@@ -442,7 +443,8 @@ void TipcPortId::ReceiveNack(uint32_t mseq, uint16_t mfrag,
   }
   if (state_ == State::kRcvBuffOverflow) {
     m_MDS_LOG_ERR("FCTRL: [me] <-- [node:%x, ref:%u], "
-        "RcvNack,  ignore[fseq:%u, state:%u]",
+        "RcvNack[fseq:%u, state:%u]"
+        "Warning[Ignore Nack]",
         id_.node, id_.ref,
         fseq, (uint8_t)state_);
     sndqueue_.MarkUnsentFrom(Seq16(fseq));
-- 
2.7.4



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

Reply via email to