CVE-2024-49901

Source
https://nvd.nist.gov/vuln/detail/CVE-2024-49901
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-49901.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2024-49901
Downstream
Related
Published
2024-10-21T18:01:33Z
Modified
2025-10-15T01:05:53.606596Z
Summary
drm/msm/adreno: Assign msm_gpu->pdev earlier to avoid nullptrs
Details

In the Linux kernel, the following vulnerability has been resolved:

drm/msm/adreno: Assign msm_gpu->pdev earlier to avoid nullptrs

There are some cases, such as the one uncovered by Commit 46d4efcccc68 ("drm/msm/a6xx: Avoid a nullptr dereference when speedbin setting fails") where

msmgpucleanup() : platformsetdrvdata(gpu->pdev, NULL);

is called on gpu->pdev == NULL, as the GPU device has not been fully initialized yet.

Turns out that there's more than just the aforementioned path that causes this to happen (e.g. the case when there's speedbin data in the catalog, but opp-supported-hw is missing in DT).

Assigning msm_gpu->pdev earlier seems like the least painful solution to this, therefore do so.

Patchwork: https://patchwork.freedesktop.org/patch/602742/

References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
0cf6c71d70d8aa39b8fd0e39c9009602a0e0d300
Fixed
9288a9676c529ad9c856096db68fad812499bc4a
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
0cf6c71d70d8aa39b8fd0e39c9009602a0e0d300
Fixed
9773737375b20070ea935203fd66cb9fa17c5acb
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
0cf6c71d70d8aa39b8fd0e39c9009602a0e0d300
Fixed
e8ac2060597a5768e4699bb61d604b4c09927b85
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
0cf6c71d70d8aa39b8fd0e39c9009602a0e0d300
Fixed
16007768551d5bfe53426645401435ca8d2ef54f

Affected versions

v3.*

v3.11
v3.11-rc4
v3.11-rc5
v3.11-rc6
v3.11-rc7
v3.12
v3.12-rc1
v3.12-rc2
v3.12-rc3
v3.12-rc4
v3.12-rc5
v3.12-rc6
v3.12-rc7
v3.13
v3.13-rc1
v3.13-rc2
v3.13-rc3
v3.13-rc4
v3.13-rc5
v3.13-rc6
v3.13-rc7
v3.13-rc8
v3.14
v3.14-rc1
v3.14-rc2
v3.14-rc3
v3.14-rc4
v3.14-rc5
v3.14-rc6
v3.14-rc7
v3.14-rc8
v3.15
v3.15-rc1
v3.15-rc2
v3.15-rc3
v3.15-rc4
v3.15-rc5
v3.15-rc6
v3.15-rc7
v3.15-rc8
v3.16
v3.16-rc1
v3.16-rc2
v3.16-rc3
v3.16-rc4
v3.16-rc5
v3.16-rc6
v3.16-rc7
v3.17
v3.17-rc1
v3.17-rc2
v3.17-rc3
v3.17-rc4
v3.17-rc5
v3.17-rc6
v3.17-rc7
v3.18
v3.18-rc1
v3.18-rc2
v3.18-rc3
v3.18-rc4
v3.18-rc5
v3.18-rc6
v3.18-rc7
v3.19
v3.19-rc1
v3.19-rc2
v3.19-rc3
v3.19-rc4
v3.19-rc5
v3.19-rc6
v3.19-rc7

v4.*

v4.0
v4.0-rc1
v4.0-rc2
v4.0-rc3
v4.0-rc4
v4.0-rc5
v4.0-rc6
v4.0-rc7
v4.1
v4.1-rc1
v4.1-rc2
v4.1-rc3
v4.1-rc4
v4.1-rc5
v4.1-rc6
v4.1-rc7
v4.1-rc8
v4.10
v4.10-rc1
v4.10-rc2
v4.10-rc3
v4.10-rc4
v4.10-rc5
v4.10-rc6
v4.10-rc7
v4.10-rc8
v4.11
v4.11-rc1
v4.11-rc2
v4.11-rc3
v4.11-rc4
v4.11-rc5
v4.11-rc6
v4.11-rc7
v4.11-rc8
v4.12
v4.12-rc1
v4.12-rc2
v4.12-rc3
v4.12-rc4
v4.12-rc5
v4.12-rc6
v4.12-rc7
v4.13
v4.13-rc1
v4.13-rc2
v4.13-rc3
v4.13-rc4
v4.13-rc5
v4.13-rc6
v4.13-rc7
v4.14
v4.14-rc1
v4.14-rc2
v4.14-rc3
v4.14-rc4
v4.14-rc5
v4.14-rc6
v4.14-rc7
v4.14-rc8
v4.15
v4.15-rc1
v4.15-rc2
v4.15-rc3
v4.15-rc4
v4.15-rc5
v4.15-rc6
v4.15-rc7
v4.15-rc8
v4.15-rc9
v4.16
v4.16-rc1
v4.16-rc2
v4.16-rc3
v4.16-rc4
v4.16-rc5
v4.16-rc6
v4.16-rc7
v4.17
v4.17-rc1
v4.17-rc2
v4.17-rc3
v4.17-rc4
v4.17-rc5
v4.17-rc6
v4.17-rc7
v4.18
v4.18-rc1
v4.18-rc2
v4.18-rc3
v4.18-rc4
v4.18-rc5
v4.18-rc6
v4.18-rc7
v4.18-rc8
v4.19
v4.19-rc1
v4.19-rc2
v4.19-rc3
v4.19-rc4
v4.19-rc5
v4.19-rc6
v4.19-rc7
v4.19-rc8
v4.2
v4.2-rc1
v4.2-rc2
v4.2-rc3
v4.2-rc4
v4.2-rc5
v4.2-rc6
v4.2-rc7
v4.2-rc8
v4.20
v4.20-rc1
v4.20-rc2
v4.20-rc3
v4.20-rc4
v4.20-rc5
v4.20-rc6
v4.20-rc7
v4.3
v4.3-rc1
v4.3-rc2
v4.3-rc3
v4.3-rc4
v4.3-rc5
v4.3-rc6
v4.3-rc7
v4.4
v4.4-rc1
v4.4-rc2
v4.4-rc3
v4.4-rc4
v4.4-rc5
v4.4-rc6
v4.4-rc7
v4.4-rc8
v4.5
v4.5-rc1
v4.5-rc2
v4.5-rc3
v4.5-rc4
v4.5-rc5
v4.5-rc6
v4.5-rc7
v4.6
v4.6-rc1
v4.6-rc2
v4.6-rc3
v4.6-rc4
v4.6-rc5
v4.6-rc6
v4.6-rc7
v4.7
v4.7-rc1
v4.7-rc2
v4.7-rc3
v4.7-rc4
v4.7-rc5
v4.7-rc6
v4.7-rc7
v4.8
v4.8-rc1
v4.8-rc2
v4.8-rc3
v4.8-rc4
v4.8-rc5
v4.8-rc6
v4.8-rc7
v4.8-rc8
v4.9
v4.9-rc1
v4.9-rc2
v4.9-rc3
v4.9-rc4
v4.9-rc5
v4.9-rc6
v4.9-rc7
v4.9-rc8

v5.*

v5.0
v5.0-rc1
v5.0-rc2
v5.0-rc3
v5.0-rc4
v5.0-rc5
v5.0-rc6
v5.0-rc7
v5.0-rc8
v5.1
v5.1-rc1
v5.1-rc2
v5.1-rc3
v5.1-rc4
v5.1-rc5
v5.1-rc6
v5.1-rc7
v5.10
v5.10-rc1
v5.10-rc2
v5.10-rc3
v5.10-rc4
v5.10-rc5
v5.10-rc6
v5.10-rc7
v5.11
v5.11-rc1
v5.11-rc2
v5.11-rc3
v5.11-rc4
v5.11-rc5
v5.11-rc6
v5.11-rc7
v5.12
v5.12-rc1
v5.12-rc1-dontuse
v5.12-rc2
v5.12-rc3
v5.12-rc4
v5.12-rc5
v5.12-rc6
v5.12-rc7
v5.12-rc8
v5.13
v5.13-rc1
v5.13-rc2
v5.13-rc3
v5.13-rc4
v5.13-rc5
v5.13-rc6
v5.13-rc7
v5.14
v5.14-rc1
v5.14-rc2
v5.14-rc3
v5.14-rc4
v5.14-rc5
v5.14-rc6
v5.14-rc7
v5.15
v5.15-rc1
v5.15-rc2
v5.15-rc3
v5.15-rc4
v5.15-rc5
v5.15-rc6
v5.15-rc7
v5.16
v5.16-rc1
v5.16-rc2
v5.16-rc3
v5.16-rc4
v5.16-rc5
v5.16-rc6
v5.16-rc7
v5.16-rc8
v5.17
v5.17-rc1
v5.17-rc2
v5.17-rc3
v5.17-rc4
v5.17-rc5
v5.17-rc6
v5.17-rc7
v5.17-rc8
v5.18
v5.18-rc1
v5.18-rc2
v5.18-rc3
v5.18-rc4
v5.18-rc5
v5.18-rc6
v5.18-rc7
v5.19
v5.19-rc1
v5.19-rc2
v5.19-rc3
v5.19-rc4
v5.19-rc5
v5.19-rc6
v5.19-rc7
v5.19-rc8
v5.2
v5.2-rc1
v5.2-rc2
v5.2-rc3
v5.2-rc4
v5.2-rc5
v5.2-rc6
v5.2-rc7
v5.3
v5.3-rc1
v5.3-rc2
v5.3-rc3
v5.3-rc4
v5.3-rc5
v5.3-rc6
v5.3-rc7
v5.3-rc8
v5.4
v5.4-rc1
v5.4-rc2
v5.4-rc3
v5.4-rc4
v5.4-rc5
v5.4-rc6
v5.4-rc7
v5.4-rc8
v5.5
v5.5-rc1
v5.5-rc2
v5.5-rc3
v5.5-rc4
v5.5-rc5
v5.5-rc6
v5.5-rc7
v5.6
v5.6-rc1
v5.6-rc2
v5.6-rc3
v5.6-rc4
v5.6-rc5
v5.6-rc6
v5.6-rc7
v5.7
v5.7-rc1
v5.7-rc2
v5.7-rc3
v5.7-rc4
v5.7-rc5
v5.7-rc6
v5.7-rc7
v5.8
v5.8-rc1
v5.8-rc2
v5.8-rc3
v5.8-rc4
v5.8-rc5
v5.8-rc6
v5.8-rc7
v5.9
v5.9-rc1
v5.9-rc2
v5.9-rc3
v5.9-rc4
v5.9-rc5
v5.9-rc6
v5.9-rc7
v5.9-rc8

v6.*

v6.0
v6.0-rc1
v6.0-rc2
v6.0-rc3
v6.0-rc4
v6.0-rc5
v6.0-rc6
v6.0-rc7
v6.1
v6.1-rc1
v6.1-rc2
v6.1-rc3
v6.1-rc4
v6.1-rc5
v6.1-rc6
v6.1-rc7
v6.1-rc8
v6.10
v6.10-rc1
v6.10-rc2
v6.10-rc3
v6.10-rc4
v6.10-rc5
v6.10-rc6
v6.10-rc7
v6.10.1
v6.10.10
v6.10.11
v6.10.12
v6.10.13
v6.10.2
v6.10.3
v6.10.4
v6.10.5
v6.10.6
v6.10.7
v6.10.8
v6.10.9
v6.11
v6.11-rc1
v6.11-rc2
v6.11-rc3
v6.11-rc4
v6.11-rc5
v6.11-rc6
v6.11-rc7
v6.11.1
v6.11.2
v6.2
v6.2-rc1
v6.2-rc2
v6.2-rc3
v6.2-rc4
v6.2-rc5
v6.2-rc6
v6.2-rc7
v6.2-rc8
v6.3
v6.3-rc1
v6.3-rc2
v6.3-rc3
v6.3-rc4
v6.3-rc5
v6.3-rc6
v6.3-rc7
v6.4
v6.4-rc1
v6.4-rc2
v6.4-rc3
v6.4-rc4
v6.4-rc5
v6.4-rc6
v6.4-rc7
v6.5
v6.5-rc1
v6.5-rc2
v6.5-rc3
v6.5-rc4
v6.5-rc5
v6.5-rc6
v6.5-rc7
v6.6
v6.6-rc1
v6.6-rc2
v6.6-rc3
v6.6-rc4
v6.6-rc5
v6.6-rc6
v6.6-rc7
v6.6.1
v6.6.10
v6.6.11
v6.6.12
v6.6.13
v6.6.14
v6.6.15
v6.6.16
v6.6.17
v6.6.18
v6.6.19
v6.6.2
v6.6.20
v6.6.21
v6.6.22
v6.6.23
v6.6.24
v6.6.25
v6.6.26
v6.6.27
v6.6.28
v6.6.29
v6.6.3
v6.6.30
v6.6.31
v6.6.32
v6.6.33
v6.6.34
v6.6.35
v6.6.36
v6.6.37
v6.6.38
v6.6.39
v6.6.4
v6.6.40
v6.6.41
v6.6.42
v6.6.43
v6.6.44
v6.6.45
v6.6.46
v6.6.47
v6.6.48
v6.6.49
v6.6.5
v6.6.50
v6.6.51
v6.6.52
v6.6.53
v6.6.54
v6.6.6
v6.6.7
v6.6.8
v6.6.9
v6.7
v6.7-rc1
v6.7-rc2
v6.7-rc3
v6.7-rc4
v6.7-rc5
v6.7-rc6
v6.7-rc7
v6.7-rc8
v6.8
v6.8-rc1
v6.8-rc2
v6.8-rc3
v6.8-rc4
v6.8-rc5
v6.8-rc6
v6.8-rc7
v6.9
v6.9-rc1
v6.9-rc2
v6.9-rc3
v6.9-rc4
v6.9-rc5
v6.9-rc6
v6.9-rc7

Database specific

{
    "vanir_signatures": [
        {
            "target": {
                "file": "drivers/gpu/drm/msm/msm_gpu.c"
            },
            "id": "CVE-2024-49901-07dbe172",
            "digest": {
                "threshold": 0.9,
                "line_hashes": [
                    "124191515913654994963373050823985609272",
                    "272946475346028146036351190342271891735",
                    "189517143232200956832545734359127696030",
                    "145053040861940848661365743693836716973"
                ]
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Line",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@16007768551d5bfe53426645401435ca8d2ef54f"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/adreno/adreno_gpu.c"
            },
            "id": "CVE-2024-49901-33756782",
            "digest": {
                "threshold": 0.9,
                "line_hashes": [
                    "3764544568981472501305237778427954240",
                    "2972481545011581198747758246611062159",
                    "185990558096544194764856237439485051089",
                    "126002237677449919944748037128126299397"
                ]
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Line",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e8ac2060597a5768e4699bb61d604b4c09927b85"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/adreno/adreno_gpu.c"
            },
            "id": "CVE-2024-49901-467e5917",
            "digest": {
                "threshold": 0.9,
                "line_hashes": [
                    "3764544568981472501305237778427954240",
                    "2972481545011581198747758246611062159",
                    "185990558096544194764856237439485051089",
                    "126002237677449919944748037128126299397"
                ]
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Line",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9288a9676c529ad9c856096db68fad812499bc4a"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/msm_gpu.c",
                "function": "msm_gpu_init"
            },
            "id": "CVE-2024-49901-48fd1dca",
            "digest": {
                "length": 3641.0,
                "function_hash": "236060976121168197951348388409082868788"
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Function",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e8ac2060597a5768e4699bb61d604b4c09927b85"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/adreno/adreno_gpu.c"
            },
            "id": "CVE-2024-49901-4b1a570c",
            "digest": {
                "threshold": 0.9,
                "line_hashes": [
                    "3764544568981472501305237778427954240",
                    "2972481545011581198747758246611062159",
                    "185990558096544194764856237439485051089",
                    "126002237677449919944748037128126299397"
                ]
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Line",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@16007768551d5bfe53426645401435ca8d2ef54f"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/adreno/adreno_gpu.c"
            },
            "id": "CVE-2024-49901-500860ff",
            "digest": {
                "threshold": 0.9,
                "line_hashes": [
                    "3764544568981472501305237778427954240",
                    "2972481545011581198747758246611062159",
                    "185990558096544194764856237439485051089",
                    "126002237677449919944748037128126299397"
                ]
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Line",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9773737375b20070ea935203fd66cb9fa17c5acb"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/adreno/adreno_gpu.c",
                "function": "adreno_gpu_init"
            },
            "id": "CVE-2024-49901-75795872",
            "digest": {
                "length": 1127.0,
                "function_hash": "337921996794080389734005026736114087899"
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Function",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9773737375b20070ea935203fd66cb9fa17c5acb"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/msm_gpu.c"
            },
            "id": "CVE-2024-49901-76052554",
            "digest": {
                "threshold": 0.9,
                "line_hashes": [
                    "124191515913654994963373050823985609272",
                    "272946475346028146036351190342271891735",
                    "189517143232200956832545734359127696030",
                    "145053040861940848661365743693836716973"
                ]
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Line",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9288a9676c529ad9c856096db68fad812499bc4a"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/adreno/adreno_gpu.c",
                "function": "adreno_gpu_init"
            },
            "id": "CVE-2024-49901-7d3a94d7",
            "digest": {
                "length": 1127.0,
                "function_hash": "337921996794080389734005026736114087899"
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Function",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@16007768551d5bfe53426645401435ca8d2ef54f"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/adreno/adreno_gpu.c",
                "function": "adreno_gpu_init"
            },
            "id": "CVE-2024-49901-8fc5e326",
            "digest": {
                "length": 1127.0,
                "function_hash": "337921996794080389734005026736114087899"
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Function",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e8ac2060597a5768e4699bb61d604b4c09927b85"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/adreno/adreno_gpu.c",
                "function": "adreno_gpu_init"
            },
            "id": "CVE-2024-49901-93205b40",
            "digest": {
                "length": 1127.0,
                "function_hash": "337921996794080389734005026736114087899"
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Function",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9288a9676c529ad9c856096db68fad812499bc4a"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/msm_gpu.c"
            },
            "id": "CVE-2024-49901-ad0a6af0",
            "digest": {
                "threshold": 0.9,
                "line_hashes": [
                    "124191515913654994963373050823985609272",
                    "272946475346028146036351190342271891735",
                    "189517143232200956832545734359127696030",
                    "145053040861940848661365743693836716973"
                ]
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Line",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9773737375b20070ea935203fd66cb9fa17c5acb"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/msm_gpu.c",
                "function": "msm_gpu_init"
            },
            "id": "CVE-2024-49901-b92522f6",
            "digest": {
                "length": 3641.0,
                "function_hash": "236060976121168197951348388409082868788"
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Function",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9773737375b20070ea935203fd66cb9fa17c5acb"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/msm_gpu.c",
                "function": "msm_gpu_init"
            },
            "id": "CVE-2024-49901-bb6e3a2c",
            "digest": {
                "length": 3641.0,
                "function_hash": "236060976121168197951348388409082868788"
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Function",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@16007768551d5bfe53426645401435ca8d2ef54f"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/msm_gpu.c"
            },
            "id": "CVE-2024-49901-c48d1b86",
            "digest": {
                "threshold": 0.9,
                "line_hashes": [
                    "124191515913654994963373050823985609272",
                    "272946475346028146036351190342271891735",
                    "189517143232200956832545734359127696030",
                    "145053040861940848661365743693836716973"
                ]
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Line",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e8ac2060597a5768e4699bb61d604b4c09927b85"
        },
        {
            "target": {
                "file": "drivers/gpu/drm/msm/msm_gpu.c",
                "function": "msm_gpu_init"
            },
            "id": "CVE-2024-49901-c4d5a644",
            "digest": {
                "length": 3641.0,
                "function_hash": "236060976121168197951348388409082868788"
            },
            "signature_version": "v1",
            "deprecated": false,
            "signature_type": "Function",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9288a9676c529ad9c856096db68fad812499bc4a"
        }
    ]
}

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
3.12.0
Fixed
6.6.55
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.10.14
Type
ECOSYSTEM
Events
Introduced
6.11.0
Fixed
6.11.3