[coverity] fix coverity issues
authorYelin Jeong <yelini.jeong@samsung.com>
Thu, 22 Dec 2022 02:07:09 +0000 (11:07 +0900)
committer추지호/NPU Lab(SR)/삼성전자 <jiho.chu@samsung.com>
Thu, 22 Dec 2022 04:39:54 +0000 (13:39 +0900)
This patch fixes coverity, svace issues.
WGID 1620546, 170120, 172077

Signed-off-by: Yelin Jeong <yelini.jeong@samsung.com>
tests/utils/ne_test_utils.cc
utils/trinity_test/stress_test.cc
utils/trinity_test/stress_test.h

index c6a2d3c2a3ea5f261f2fc66962a95efa46114081..f46be40f21bf956c99c4e0c3335c5103a63af420 100644 (file)
@@ -555,8 +555,10 @@ UtilTrinity::run_each (UtilModel *model, bool sync) {
   cb_data->instance = this;
   npuOutputNotify cb;
 
-  if (need_model_ && model == nullptr)
+  if (need_model_ && model == nullptr) {
+    delete cb_data;
     return -ENOENT;
+  }
 
   if (verify_) {
     cb = UtilTrinity::callbackVerify;
@@ -583,8 +585,10 @@ UtilTrinity::run_each (UtilModel *model, bool sync) {
       input.bufs[0].type = BUFFER_MAPPED;
 
       status = allocNPU_inputBuffers (dev_, &input);
-      if (status != 0)
+      if (status != 0) {
+        delete cb_data;
         return status;
+      }
 
       cb_output = &output;
       status = runNPU_sync (dev_, 0, &input, &output);
@@ -598,6 +602,8 @@ UtilTrinity::run_each (UtilModel *model, bool sync) {
       }
 
       cb (cb_output, 0, static_cast<void *> (cb_data));
+    } else {
+      delete cb_data;
     }
   } else {
     if (model) {
@@ -611,8 +617,10 @@ UtilTrinity::run_each (UtilModel *model, bool sync) {
       input.bufs[0].type = BUFFER_MAPPED;
 
       status = allocNPU_inputBuffers (dev_, &input);
-      if (status != 0)
+      if (status != 0) {
+        delete cb_data;
         return status;
+      }
 
       status =
           runNPU_async (dev_, 0, &input, cb, NULL, static_cast<void *> (cb_data), NPUASYNC_WAIT);
@@ -622,6 +630,8 @@ UtilTrinity::run_each (UtilModel *model, bool sync) {
     if (status >= 0) {
       std::unique_lock<std::mutex> lock (m_);
       total_++;
+    } else {
+      delete cb_data;
     }
   }
 
index 94d19d5813c87b9a3a5e13daad39d94b70968c27..28ec31f7be742c08654b72e6634e0821215fd46f 100644 (file)
@@ -137,7 +137,7 @@ StressTester::runAllocMemory () {
   std::vector<generic_buffer*> buffers;
   std::random_device rd;
   std::mt19937 gen (rd ());
-  std::uniform_int_distribution<int> dis (1, buffer_size_);
+  std::uniform_int_distribution<uint64_t> dis (1, buffer_size_);
   clock_t start, finish, iter_start, iter_finish;
 
   start = clock ();
index 9f41acdaed6c416edc1f6280c56a0a41c609f1e6..e299797b98a894319514ba7516db390cc009e68a 100644 (file)
@@ -44,7 +44,7 @@ class StressTester {
   int parseArgs (int argc, char** argv);
   void setPrintTime (bool print_time) { print_time_ = print_time; }
   void setAllocRandom (bool alloc_random) { alloc_random_ = alloc_random; }
-  void setBufferSize (std::string buffer_size) { buffer_size_ = stoi (buffer_size); }
+  void setBufferSize (std::string buffer_size) { buffer_size_ = stoull (buffer_size); }
   void setAllocNum (std::string alloc_num) { alloc_num_ = stoi (alloc_num); }
   void setIterNum (std::string iter_num) { iter_num_ = stoi (iter_num); }
   void setModelPath (std::string model_path) { model_dir_ = model_path; }