Message ID | 20180704094615.ctabdm4cxbkdvuap@kili.mountain (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 2018-07-04 05:46 AM, Dan Carpenter wrote: > The ->info[] array has DAL_IRQ_SOURCES_NUMBER elements so this condition > should be >= instead of > or we could read one element beyond the end of > the array. > > Fixes: 4562236b3bc0 ("drm/amd/dc: Add dc display driver (v2)") > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Reviewed-by: Harry Wentland <harry.wentland@amd.com> Harry > > diff --git a/drivers/gpu/drm/amd/display/dc/irq/irq_service.c b/drivers/gpu/drm/amd/display/dc/irq/irq_service.c > index dcdfa0f01551..604bea01fc13 100644 > --- a/drivers/gpu/drm/amd/display/dc/irq/irq_service.c > +++ b/drivers/gpu/drm/amd/display/dc/irq/irq_service.c > @@ -78,7 +78,7 @@ const struct irq_source_info *find_irq_source_info( > struct irq_service *irq_service, > enum dc_irq_source source) > { > - if (source > DAL_IRQ_SOURCES_NUMBER || source < DC_IRQ_SOURCE_INVALID) > + if (source >= DAL_IRQ_SOURCES_NUMBER || source < DC_IRQ_SOURCE_INVALID) > return NULL; > > return &irq_service->info[source]; >
diff --git a/drivers/gpu/drm/amd/display/dc/irq/irq_service.c b/drivers/gpu/drm/amd/display/dc/irq/irq_service.c index dcdfa0f01551..604bea01fc13 100644 --- a/drivers/gpu/drm/amd/display/dc/irq/irq_service.c +++ b/drivers/gpu/drm/amd/display/dc/irq/irq_service.c @@ -78,7 +78,7 @@ const struct irq_source_info *find_irq_source_info( struct irq_service *irq_service, enum dc_irq_source source) { - if (source > DAL_IRQ_SOURCES_NUMBER || source < DC_IRQ_SOURCE_INVALID) + if (source >= DAL_IRQ_SOURCES_NUMBER || source < DC_IRQ_SOURCE_INVALID) return NULL; return &irq_service->info[source];
The ->info[] array has DAL_IRQ_SOURCES_NUMBER elements so this condition should be >= instead of > or we could read one element beyond the end of the array. Fixes: 4562236b3bc0 ("drm/amd/dc: Add dc display driver (v2)") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>