Hi,
Static analysis on linux-next has found a potential issue in function
dml_rq_dlg_get_rq_reg in
drivers/gpu/drm/amd/display/dc/dml2/dml_display_rq_dlg_calc.c
The issue is as follows:
if (min_meta_chunk_bytes == 0)
rq_regs->rq_regs_l.min_meta_chunk_size = 0;
else
rq_regs->rq_regs_l.min_meta_chunk_size =
(dml_uint_t)(dml_log2((dml_float_t) min_meta_chunk_bytes) - 6 + 1);
if ( == 0)
rq_regs->rq_regs_c.min_meta_chunk_size = 0;
else
rq_regs->rq_regs_c.min_meta_chunk_size =
(dml_uint_t)(dml_log2((dml_float_t) p1_min_meta_chunk_bytes) - 6 + 1);
it appears that the second if statement is checking for
min_meta_chunk_bytes == 0 and I think it should be in fact checking for
p1_min_meta_chunk_bytes == 0 instead. I don't have the hardware so I
can't test this hypothesis.
Regards,
Colin