Hi,
SUSE received a bug report:
https://bugzilla.suse.com/show_bug.cgi?id=1271175
get_ss_info_from_atombios() crashes in 7.1.2.
calc_pll_cs->ctx (dc_context) is NULL while trying to log by the first
DC_LOG_SYNC() in get_ss_info_from_atombios():
if (as_signal == AS_SIGNAL_TYPE_HDMI
&&
ss_info_cur->spread_spectrum_percentage > 6){
/* invalid input, do nothing */
DC_LOG_SYNC(
"Invalid SS percentage ");
DC_LOG_SYNC(
"for HDMI in ATOMBIOS info Table!!!\n");
continue;
}
Note dce110_clk_src_construct() calls:
-> ss_info_from_atombios_create()
-> get_ss_info_from_atombios() <- uses calc_pll_cs->ctx
-> calc_pll_max_vco_construct() <- sets calc_pll_cs->ctx AFAICT
calc_pll_cs->ctx should not be used in the former, or something.
This was likely introduced by:
commit 1296423bf23c7a58133970e223b1f47ec6570308
Author: Bhawanpreet Lakha <[email protected]>
Date: Tue Feb 20 17:42:50 2018 -0500
drm/amd/display: define DC_LOGGER for logger
Before the commit,
clk_src->base.ctx->logger
was used in get_ss_info_from_atombios(). The commit unified all users to
use:
clk_src->ctx->logger
The former is set at the beginning of dce110_clk_src_construct() (before
the crash location). The latter only in calc_pll_max_vco_construct()
(after the crash location).
Any ideas how to fix this? Redefine DC_LOGGER to clk_src->base in
get_ss_info_from_atombios()?
I'm not sure if this is a regression and there is some underlying issue
provoking the "Invalid SS percentage" dump -- asked in the bug and
waiting for a reply.
thanks,
--
js
suse labs