[UnitTest/Bug] Add deregisterModel() after runInput()
authorDongju Chae <dongju.chae@samsung.com>
Fri, 11 Sep 2020 08:14:35 +0000 (17:14 +0900)
committer송욱/On-Device Lab(SR)/Staff Engineer/삼성전자 <wook16.song@samsung.com>
Fri, 11 Sep 2020 09:03:30 +0000 (18:03 +0900)
This patch adds deregisterModel() after runInput().
When we run this unittest twice, the kernel panic occurs.

Signed-off-by: Dongju Chae <dongju.chae@samsung.com>
tests/unittests/ne_core_npu_test.cc

index 26e6b6e..56a0a09 100644 (file)
@@ -531,7 +531,7 @@ TEST (ne_core_npu_test, run_inference_triv)
   input.model_id = model.id;
 
   EXPECT_GE (api->runInput (&input), 0);
-
+  EXPECT_EQ (api->deregisterModel (model.id), 0);
   EXPECT_EQ (api->dealloc (model_dmabuf), 0);
   EXPECT_EQ (api->dealloc (buffer_dmabuf), 0);
 }
@@ -586,8 +586,8 @@ TEST (ne_core_npu_test, run_inference_triv2)
   input.timeout_ms = 100;
 
   EXPECT_GE (api->runInput (&input), 0);
-
   EXPECT_EQ (api->munmap (buf, size), 0);
+  EXPECT_EQ (api->deregisterModel (model.id), 0);
   EXPECT_EQ (api->dealloc (model_dmabuf), 0);
   EXPECT_EQ (api->dealloc (buffer_dmabuf), 0);
 }
@@ -654,6 +654,7 @@ TEST (ne_core_npu_test, run_inference_async0_triv2)
 
   EXPECT_GE (f_ret.get(), 0);
   EXPECT_EQ (api->munmap (buf, size), 0);
+  EXPECT_EQ (api->deregisterModel (model.id), 0);
   EXPECT_EQ (api->dealloc (model_dmabuf), 0);
   EXPECT_EQ (api->dealloc (buffer_dmabuf), 0);
 }
@@ -726,6 +727,7 @@ TEST (ne_core_npu_test, run_inference_async1_triv2)
 
   EXPECT_GE (api->runInput (&input), 0);
   EXPECT_EQ (api->munmap (buf, size), 0);
+  EXPECT_EQ (api->deregisterModel (model.id), 0);
   EXPECT_EQ (api->dealloc (model.dbuf_fd), 0);
   EXPECT_EQ (api->dealloc (buffer_dmabuf), 0);
 }
@@ -773,6 +775,7 @@ TEST (ne_core_npu_test, run_inference_triv2_n)
   input.timeout_ms = 100;
 
   EXPECT_EQ (api->runInput (&input), -EINVAL);
+  EXPECT_EQ (api->deregisterModel (model.id), 0);
   EXPECT_EQ (api->dealloc (model_dmabuf), 0);
   EXPECT_EQ (api->dealloc (buffer_dmabuf), 0);
 }