Bug 1223711 (CVE-2024-27040) - VUL-0: CVE-2024-27040: kernel: drm/amd/display: Add 'replay' NULL check in 'edp_set_replay_allow_active()'
Summary: VUL-0: CVE-2024-27040: kernel: drm/amd/display: Add 'replay' NULL check in 'e...
Status: RESOLVED FIXED
Alias: CVE-2024-27040
Product: SUSE Security Incidents
Classification: Novell Products
Component: Incidents (show other bugs)
Version: unspecified
Hardware: Other Other
: P3 - Medium : Normal
Target Milestone: ---
Assignee: Security Team bot
QA Contact: Security Team bot
URL: https://smash.suse.de/issue/403831/
Whiteboard: CVSSv3.1:SUSE:CVE-2024-27040:5.5:(AV:...
Keywords:
Depends on:
Blocks:
 
Reported: 2024-05-02 11:35 UTC by SMASH SMASH
Modified: 2024-07-08 14:41 UTC (History)
2 users (show)

See Also:
Found By: Security Response Team
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description SMASH SMASH 2024-05-02 11:35:13 UTC
In the Linux kernel, the following vulnerability has been resolved:

drm/amd/display: Add 'replay' NULL check in 'edp_set_replay_allow_active()'

In the first if statement, we're checking if 'replay' is NULL. But in
the second if statement, we're not checking if 'replay' is NULL again
before calling replay->funcs->replay_set_power_opt().

if (replay == NULL && force_static)
    return false;

...

if (link->replay_settings.replay_feature_enabled &&
    replay->funcs->replay_set_power_opt) {
	replay->funcs->replay_set_power_opt(replay, *power_opts, panel_inst);
	link->replay_settings.replay_power_opt_active = *power_opts;
}

If 'replay' is NULL, this will cause a null pointer dereference.

Fixes the below found by smatch:
drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_edp_panel_control.c:895 edp_set_replay_allow_active() error: we previously assumed 'replay' could be null (see line 887)

References:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2024-27040
https://www.cve.org/CVERecord?id=CVE-2024-27040
https://git.kernel.org/stable/c/d0e94f4807ff0df66cf447d6b4bbb8ac830e99c3
https://git.kernel.org/stable/c/e7cadd5d3a8ffe334d0229ba9eda4290138d56e7
https://git.kernel.org/stable/c/f610c46771ef1047e46d61807aa7c69cd29e63d8
https://git.kernel.org/stable/c/f6aed043ee5d75b3d1bfc452b1a9584b63c8f76b
https://git.kernel.org/pub/scm/linux/security/vulns.git/plain/cve/published/2024/CVE-2024-27040.mbox
https://bugzilla.redhat.com/show_bug.cgi?id=2278452
Comment 14 Andrea Mattiazzo 2024-06-12 07:32:52 UTC
All done, closing.