[patch] drm/amdgpu: off by one check in dce_v8_0_hpd_irq()

Dan Carpenter dan.carpenter at oracle.com
Thu Jun 11 08:13:04 PDT 2015


It should be >= instead of > or we go beyond the end of the
interrupt_status_offsets[] array.  Also I changed it to use
ARRAY_SIZE().

Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>

diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
index 9e8b9f1..0f70dc9 100644
--- a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
@@ -3397,7 +3397,7 @@ static int dce_v8_0_hpd_irq(struct amdgpu_device *adev,
 	uint32_t disp_int, mask, int_control, tmp;
 	unsigned hpd;
 
-	if (entry->src_data > 6) {
+	if (entry->src_data >= ARRAY_SIZE(interrupt_status_offsets)) {
 		DRM_DEBUG("Unhandled interrupt: %d %d\n", entry->src_id, entry->src_data);
 		return 0;
 	}


More information about the dri-devel mailing list