Re: [PATCH] drm/radeon: fix VCE fence command

From: Christian König
Date: Tue Apr 15 2014 - 05:17:47 EST


Am 15.04.2014 00:13, schrieb Deucher, Alexander:
-----Original Message-----
From: Christoph Jaeger [mailto:christophjaeger@xxxxxxxxx]
Sent: Monday, April 14, 2014 6:10 PM
To: Deucher, Alexander; Koenig, Christian; airlied@xxxxxxxx
Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Christoph
Jaeger
Subject: [PATCH] drm/radeon: fix VCE fence command

Due to a type mismatch that causes an implicit type conversion, the
upper 32 bits of the GPU address have been zeroed out when adding to the
command buffer.

Picked up by Coverity - CID 1198624.

Signed-off-by: Christoph Jaeger <christophjaeger@xxxxxxxxx>
Good catch!

Indeed.


Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

Added to my 3.15 fixes queue.

Thanks,
Christian.


---
drivers/gpu/drm/radeon/radeon_vce.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/radeon/radeon_vce.c
b/drivers/gpu/drm/radeon/radeon_vce.c
index 76e9904..ced53dd 100644
--- a/drivers/gpu/drm/radeon/radeon_vce.c
+++ b/drivers/gpu/drm/radeon/radeon_vce.c
@@ -613,7 +613,7 @@ void radeon_vce_fence_emit(struct radeon_device
*rdev,
struct radeon_fence *fence)
{
struct radeon_ring *ring = &rdev->ring[fence->ring];
- uint32_t addr = rdev->fence_drv[fence->ring].gpu_addr;
+ uint64_t addr = rdev->fence_drv[fence->ring].gpu_addr;

radeon_ring_write(ring, VCE_CMD_FENCE);
radeon_ring_write(ring, addr);
--
1.9.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/