Lucene search

K
vulnrichmentLinuxVULNRICHMENT:CVE-2024-27040
HistoryMay 01, 2024 - 12:54 p.m.

CVE-2024-27040 drm/amd/display: Add 'replay' NULL check in 'edp_set_replay_allow_active()'

2024-05-0112:54:00
Linux
github.com
linux kernel vulnerability
amd display
null check
replay
smatch
cve

6.6 Medium

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

15.6%

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)

CNA Affected

[
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "unaffected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "drivers/gpu/drm/amd/display/dc/link/protocols/link_edp_panel_control.c"
    ],
    "versions": [
      {
        "version": "c7ddc0a800bc",
        "lessThan": "f610c46771ef",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "c7ddc0a800bc",
        "lessThan": "e7cadd5d3a8f",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "c7ddc0a800bc",
        "lessThan": "d0e94f4807ff",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "c7ddc0a800bc",
        "lessThan": "f6aed043ee5d",
        "status": "affected",
        "versionType": "git"
      }
    ]
  },
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "affected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "drivers/gpu/drm/amd/display/dc/link/protocols/link_edp_panel_control.c"
    ],
    "versions": [
      {
        "version": "6.6",
        "status": "affected"
      },
      {
        "version": "0",
        "lessThan": "6.6",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.6.23",
        "lessThanOrEqual": "6.6.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.7.11",
        "lessThanOrEqual": "6.7.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.8.2",
        "lessThanOrEqual": "6.8.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.9",
        "lessThanOrEqual": "*",
        "status": "unaffected",
        "versionType": "original_commit_for_fix"
      }
    ]
  }
]

6.6 Medium

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

15.6%