← CVE Intelligence

CVE-2026-80704

drm/amd/display: use proper context for logging PUBLISHED

Description (CNA)

In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: use proper context for logging The same as the rest of the code, get_ss_info_from_atombios() uses calc_pll_cs->ctx->logger for logging. But calc_pll_cs->ctx is initialized only later in calc_pll_max_vco_construct(). Therefore, any output using DC_LOG_SYNC() leads to a NULL pointer deference in get_ss_info_from_atombios(). According to Sashiko, the very same problem exists in dce112_get_pix_clk_dividers() and dcn3_get_pix_clk_dividers() too. To avoid accessing the NULL context, use clk_src->base.ctx->logger everywhere. That context in base is initialized earlier in dce110_clk_src_construct() and dce112_clk_src_construct(). Before get_ss_info_from_atombios() or Sashiko's get_pix_clk_dividers functions above are actually called. This is done by redefining DC_LOGGER to CTX->logger. Before: dce110_clk_src_construct() did: -> sets clk_src->base.ctx = ctx; -> ss_info_from_atombios_create() -> get_ss_info_from_atombios() <- uses calc_pll_cs->ctx # BOOM -> calc_pll_max_vco_construct() <- sets calc_pll_cs->ctx After: dce110_clk_src_construct() does: -> sets clk_src->base.ctx = ctx; -> ss_info_from_atombios_create() -> get_ss_info_from_atombios() <- uses clk_src->base.ctx (cherry picked from commit 6f16fcbb0c46a87e3d9685407e906573d60104b0)

Affected (CNA)

Vendor / productVersions
Linux / Linuxaffected 1296423bf23c7a58133970e223b1f47ec6570308 before 07b52a41765722ec971e0cd9739b140bf4933998; affected 1296423bf23c7a58133970e223b1f47ec6570308 before a94e62b7c7018fcfe0251e53fa96af30f12d923a; affected 1296423bf23c7a58133970e223b1f47ec6570308 before 02647d98340738f918690ed227fdcf154db1b84a; affected 1296423bf23c7a58133970e223b1f47ec6570308 before f556bc844cc4423e5ad41ae41a4c24f1cf75b978; affected 1296423bf23c7a58133970e223b1f47ec6570308 before 114b42507b6a23d9d24e24e4ef165233332c64d4
Linux / Linuxaffected 4.17; unaffected 0 before 4.17; unaffected 6.6.160 through 6.6.*; unaffected 6.12.103 through 6.12.*; unaffected 6.18.44 through 6.18.*; unaffected 7.1.8 through 7.1.*; unaffected 7.2 through *

CWE

No CWE identifiers supplied.

References