Replace KUNIT_EXPECT_EQ with KUNIT_ASSERT_EQ in ttm_bo_validate test cases
where subsequent ttm_bo_fini would cause a kref underflow if the preceding
ttm_bo_init_reserved (or ttm_bo_validate) failed. When those functions fail
they already release their internal references, leaving the refcount at 0.
Continuing to ttm_bo_fini without aborting performs an extra kref_put.

Cc: [email protected]
Fixes: 8bd1ff5ddc7b ("drm/ttm/tests: Test simple BO creation and validation")
Signed-off-by: WenTao Liang <[email protected]>
---
 .../gpu/drm/ttm/tests/ttm_bo_validate_test.c  | 22 +++++++++----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/ttm/tests/ttm_bo_validate_test.c 
b/drivers/gpu/drm/ttm/tests/ttm_bo_validate_test.c
index 2db221f6fc3a..7c4179f6349c 100644
--- a/drivers/gpu/drm/ttm/tests/ttm_bo_validate_test.c
+++ b/drivers/gpu/drm/ttm/tests/ttm_bo_validate_test.c
@@ -217,7 +217,7 @@ static void ttm_bo_init_reserved_resv(struct kunit *test)
                                   &dummy_ttm_bo_destroy);
        dma_resv_unlock(bo->base.resv);
 
-       KUNIT_EXPECT_EQ(test, err, 0);
+       KUNIT_ASSERT_EQ(test, err, 0);
        KUNIT_EXPECT_PTR_EQ(test, bo->base.resv, &resv);
 
        ttm_resource_free(bo, &bo->resource);
@@ -249,7 +249,7 @@ static void ttm_bo_validate_basic(struct kunit *test)
        err = ttm_bo_init_reserved(priv->ttm_dev, bo, params->bo_type,
                                   fst_placement, PAGE_SIZE, &ctx_init, NULL,
                                   NULL, &dummy_ttm_bo_destroy);
-       KUNIT_EXPECT_EQ(test, err, 0);
+       KUNIT_ASSERT_EQ(test, err, 0);
 
        snd_place = ttm_place_kunit_init(test, snd_mem, 
GPU_BUDDY_TOPDOWN_ALLOCATION);
        snd_placement = ttm_placement_kunit_init(test, snd_place, 1);
@@ -395,7 +395,7 @@ static void ttm_bo_validate_same_placement(struct kunit 
*test)
        err = ttm_bo_init_reserved(priv->ttm_dev, bo, params->bo_type,
                                   placement, PAGE_SIZE, &ctx_init, NULL,
                                   NULL, &dummy_ttm_bo_destroy);
-       KUNIT_EXPECT_EQ(test, err, 0);
+       KUNIT_ASSERT_EQ(test, err, 0);
 
        err = ttm_bo_validate(bo, placement, &ctx_val);
        dma_resv_unlock(bo->base.resv);
@@ -722,7 +722,7 @@ static void ttm_bo_validate_move_fence_not_signaled(struct 
kunit *test)
        err = ttm_bo_init_reserved(priv->ttm_dev, bo, bo_type, placement_init,
                                   PAGE_SIZE, &ctx_init, NULL, NULL,
                                   &dummy_ttm_bo_destroy);
-       KUNIT_EXPECT_EQ(test, err, 0);
+       KUNIT_ASSERT_EQ(test, err, 0);
 
        ttm_mock_manager_init(priv->ttm_dev, fst_mem, MANAGER_SIZE);
        ttm_mock_manager_init(priv->ttm_dev, snd_mem, MANAGER_SIZE);
@@ -840,7 +840,7 @@ static void ttm_bo_validate_happy_evict(struct kunit *test)
        err = ttm_bo_validate(bo_val, placement, &ctx_val);
        ttm_bo_unreserve(bo_val);
 
-       KUNIT_EXPECT_EQ(test, err, 0);
+       KUNIT_ASSERT_EQ(test, err, 0);
        KUNIT_EXPECT_EQ(test, bos[0].resource->mem_type, mem_type_evict);
        KUNIT_EXPECT_TRUE(test, bos[0].ttm->page_flags & 
TTM_TT_FLAG_ZERO_ALLOC);
        KUNIT_EXPECT_TRUE(test, bos[0].ttm->page_flags & 
TTM_TT_FLAG_PRIV_POPULATED);
@@ -879,7 +879,7 @@ static void ttm_bo_validate_all_pinned_evict(struct kunit 
*test)
        err = ttm_bo_init_reserved(priv->ttm_dev, bo_big, bo_type, placement,
                                   PAGE_SIZE, &ctx_init, NULL, NULL,
                                   &dummy_ttm_bo_destroy);
-       KUNIT_EXPECT_EQ(test, err, 0);
+       KUNIT_ASSERT_EQ(test, err, 0);
 
        ttm_bo_pin(bo_big);
        dma_resv_unlock(bo_big->base.resv);
@@ -930,7 +930,7 @@ static void ttm_bo_validate_allowed_only_evict(struct kunit 
*test)
        err = ttm_bo_init_reserved(priv->ttm_dev, bo_pinned, bo_type, placement,
                                   PAGE_SIZE, &ctx_init, NULL, NULL,
                                   &dummy_ttm_bo_destroy);
-       KUNIT_EXPECT_EQ(test, err, 0);
+       KUNIT_ASSERT_EQ(test, err, 0);
        ttm_bo_pin(bo_pinned);
        dma_resv_unlock(bo_pinned->base.resv);
 
@@ -941,7 +941,7 @@ static void ttm_bo_validate_allowed_only_evict(struct kunit 
*test)
        err = ttm_bo_init_reserved(priv->ttm_dev, bo_evictable, bo_type, 
placement,
                                   PAGE_SIZE, &ctx_init, NULL, NULL,
                                   &dummy_ttm_bo_destroy);
-       KUNIT_EXPECT_EQ(test, err, 0);
+       KUNIT_ASSERT_EQ(test, err, 0);
        dma_resv_unlock(bo_evictable->base.resv);
 
        bo = ttm_bo_kunit_init(test, test->priv, BO_SIZE, NULL);
@@ -995,7 +995,7 @@ static void ttm_bo_validate_deleted_evict(struct kunit 
*test)
        err = ttm_bo_init_reserved(priv->ttm_dev, bo_big, bo_type, placement,
                                   PAGE_SIZE, &ctx_init, NULL, NULL,
                                   &dummy_ttm_bo_destroy);
-       KUNIT_EXPECT_EQ(test, err, 0);
+       KUNIT_ASSERT_EQ(test, err, 0);
        KUNIT_EXPECT_EQ(test, ttm_resource_manager_usage(man), big);
 
        dma_resv_unlock(bo_big->base.resv);
@@ -1052,7 +1052,7 @@ static void ttm_bo_validate_busy_domain_evict(struct 
kunit *test)
        err = ttm_bo_init_reserved(priv->ttm_dev, bo_init, bo_type, placement,
                                   PAGE_SIZE, &ctx_init, NULL, NULL,
                                   &dummy_ttm_bo_destroy);
-       KUNIT_EXPECT_EQ(test, err, 0);
+       KUNIT_ASSERT_EQ(test, err, 0);
        dma_resv_unlock(bo_init->base.resv);
 
        bo_val = ttm_bo_kunit_init(test, test->priv, BO_SIZE, NULL);
@@ -1096,7 +1096,7 @@ static void ttm_bo_validate_evict_gutting(struct kunit 
*test)
        err = ttm_bo_init_reserved(priv->ttm_dev, bo_evict, bo_type, placement,
                                   PAGE_SIZE, &ctx_init, NULL, NULL,
                                   &dummy_ttm_bo_destroy);
-       KUNIT_EXPECT_EQ(test, err, 0);
+       KUNIT_ASSERT_EQ(test, err, 0);
        dma_resv_unlock(bo_evict->base.resv);
 
        bo = ttm_bo_kunit_init(test, test->priv, BO_SIZE, NULL);
-- 
2.39.5 (Apple Git-154)

Reply via email to