osaf/libs/core/leap/tests/sysf_ipc_test.cc |  31 ++++++++---------------------
 1 files changed, 9 insertions(+), 22 deletions(-)


diff --git a/osaf/libs/core/leap/tests/sysf_ipc_test.cc 
b/osaf/libs/core/leap/tests/sysf_ipc_test.cc
--- a/osaf/libs/core/leap/tests/sysf_ipc_test.cc
+++ b/osaf/libs/core/leap/tests/sysf_ipc_test.cc
@@ -18,7 +18,7 @@
 #include <iostream>
 #include <string>
 #include <thread>
-#include <mutex>
+#include <atomic>
 #include <sched.h>
 #include <poll.h>
 #include <cstdlib>
@@ -30,8 +30,6 @@
 #include "ncs_main_papi.h"
 #include "gtest/gtest.h"
 
-std::mutex send_ctr_mutex;
-
 typedef struct message_ {
   struct message_ *next;
   NCS_IPC_PRIORITY prio;
@@ -61,7 +59,6 @@ class SysfIpcTest : public ::testing::Te
   SysfIpcTest() {
     // Setup work can be done here for each test.
     no_of_msgs_sent = 0;
-    no_of_msgs_received = 0;
   }
 
   virtual ~SysfIpcTest() {
@@ -138,10 +135,7 @@ class SysfIpcTest : public ::testing::Te
       rc = m_NCS_IPC_SEND(&mbox, msg, msg->prio);
       EXPECT_EQ(rc, NCSCC_RC_SUCCESS);
 
-      {
-        std::lock_guard<std::mutex> lck(send_ctr_mutex);
-        no_of_msgs_sent++;
-      }
+      no_of_msgs_sent++;
 
       sched_yield();
     }
@@ -150,20 +144,19 @@ class SysfIpcTest : public ::testing::Te
   // Objects declared here can be used by all tests in the test case.
 
   static SYSF_MBX mbox;
-  static uint32_t no_of_msgs_sent;
-  static uint32_t no_of_msgs_received;
+  static std::atomic<int> no_of_msgs_sent;
 };
 
-SYSF_MBX SysfIpcTest::mbox = 0;
-uint32_t SysfIpcTest::no_of_msgs_sent = 0;
-uint32_t SysfIpcTest::no_of_msgs_received = 0;
+SYSF_MBX SysfIpcTest::mbox {0};
+std::atomic<int> SysfIpcTest::no_of_msgs_sent {0};
 
 void SysfIpcTest::MessageReceiver() {
   NCS_SEL_OBJ mbox_fd;
   pollfd fds;
   bool done = false;
   Message *msg;
-
+  int no_of_msgs_received {0};
+  
   mbox_fd = ncs_ipc_get_sel_obj(&mbox);
 
   fds.fd = mbox_fd.rmv_obj;
@@ -192,10 +185,7 @@ void SysfIpcTest::MessageReceiver() {
     }
   }
 
-  {
-    std::lock_guard<std::mutex> lck(send_ctr_mutex);
-    ASSERT_EQ(no_of_msgs_received, no_of_msgs_sent);
-  }
+  ASSERT_EQ(no_of_msgs_received, no_of_msgs_sent);
 } 
 
 // Tests send and receive
@@ -245,10 +235,7 @@ TEST_F(SysfIpcTest, TestThreadsSendRecei
 
   sched_yield();
 
-  {
-    std::lock_guard<std::mutex> lck(send_ctr_mutex);
-    no_of_msgs_sent++;
-  }
+  no_of_msgs_sent++;
 
   send_msg(NCS_IPC_PRIORITY_LOW, 4711);
 

------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785351&iu=/4140
_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to