gpu: drm: radeon: radeon_test: Replace mdelay() with msleep()
authorJia-Ju Bai <baijiaju1990@gmail.com>
Sat, 4 Aug 2018 00:01:02 +0000 (08:01 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 27 Aug 2018 16:10:02 +0000 (11:10 -0500)
radeon_test_ring_sync() and radeon_test_ring_sync2() are never
called in atomic context.
They call mdelay() to busily wait, which is not necessary.
mdelay() can be replaced with msleep().

This is found by a static analysis tool named DCNS written by myself.

Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/radeon/radeon_test.c

index 0c7f228db6e3d9c6c267d256f1c68d78d33ba16f..701c4a59e3c3bcbed2d5e37aae1c965ad31505aa 100644 (file)
@@ -348,7 +348,7 @@ void radeon_test_ring_sync(struct radeon_device *rdev,
        if (r)
                goto out_cleanup;
 
-       mdelay(1000);
+       msleep(1000);
 
        if (radeon_fence_signaled(fence1)) {
                DRM_ERROR("Fence 1 signaled without waiting for semaphore.\n");
@@ -369,7 +369,7 @@ void radeon_test_ring_sync(struct radeon_device *rdev,
                goto out_cleanup;
        }
 
-       mdelay(1000);
+       msleep(1000);
 
        if (radeon_fence_signaled(fence2)) {
                DRM_ERROR("Fence 2 signaled without waiting for semaphore.\n");
@@ -442,7 +442,7 @@ static void radeon_test_ring_sync2(struct radeon_device *rdev,
        if (r)
                goto out_cleanup;
 
-       mdelay(1000);
+       msleep(1000);
 
        if (radeon_fence_signaled(fenceA)) {
                DRM_ERROR("Fence A signaled without waiting for semaphore.\n");
@@ -462,7 +462,7 @@ static void radeon_test_ring_sync2(struct radeon_device *rdev,
        radeon_ring_unlock_commit(rdev, ringC, false);
 
        for (i = 0; i < 30; ++i) {
-               mdelay(100);
+               msleep(100);
                sigA = radeon_fence_signaled(fenceA);
                sigB = radeon_fence_signaled(fenceB);
                if (sigA || sigB)
@@ -487,7 +487,7 @@ static void radeon_test_ring_sync2(struct radeon_device *rdev,
        radeon_semaphore_emit_signal(rdev, ringC->idx, semaphore);
        radeon_ring_unlock_commit(rdev, ringC, false);
 
-       mdelay(1000);
+       msleep(1000);
 
        r = radeon_fence_wait(fenceA, false);
        if (r) {