CVE-2022-49650

Source
https://nvd.nist.gov/vuln/detail/CVE-2022-49650
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-49650.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2022-49650
Downstream
Related
Published
2025-02-26T02:23:53Z
Modified
2025-10-21T10:47:34.124994Z
Summary
dmaengine: qcom: bam_dma: fix runtime PM underflow
Details

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

dmaengine: qcom: bam_dma: fix runtime PM underflow

Commit dbad41e7bb5f ("dmaengine: qcom: bamdma: check if the runtime pm enabled") caused unbalanced pmruntimeget/put() calls when the bam is controlled remotely. This commit reverts it and just enables pmruntime in all cases, the clk_* functions already just nop when the clock is NULL.

Also clean up a bit by removing unnecessary bamclk null checks.

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
dbad41e7bb5f4b9949ff5ea1d76c20711f326308
Fixed
2f6ded79068cac8cff41d5d5632564165d98ee12
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
dbad41e7bb5f4b9949ff5ea1d76c20711f326308
Fixed
b702a1077b51fcb39507cc3bd39206f539319a96
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
dbad41e7bb5f4b9949ff5ea1d76c20711f326308
Fixed
0ac9c3dd0d6fe293cd5044cfad10bec27d171e4e

Affected versions

v4.*

v4.17
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.20
v4.20-rc1
v4.20-rc2
v4.20-rc3
v4.20-rc4
v4.20-rc5
v4.20-rc6
v4.20-rc7

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.15.1
v5.15.10
v5.15.11
v5.15.12
v5.15.13
v5.15.14
v5.15.15
v5.15.16
v5.15.17
v5.15.18
v5.15.19
v5.15.2
v5.15.20
v5.15.21
v5.15.22
v5.15.23
v5.15.24
v5.15.25
v5.15.26
v5.15.27
v5.15.28
v5.15.29
v5.15.3
v5.15.30
v5.15.31
v5.15.32
v5.15.33
v5.15.34
v5.15.35
v5.15.36
v5.15.37
v5.15.38
v5.15.39
v5.15.4
v5.15.40
v5.15.41
v5.15.42
v5.15.43
v5.15.44
v5.15.45
v5.15.46
v5.15.47
v5.15.48
v5.15.49
v5.15.5
v5.15.50
v5.15.51
v5.15.52
v5.15.53
v5.15.6
v5.15.7
v5.15.8
v5.15.9
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.18.1
v5.18.10
v5.18.2
v5.18.3
v5.18.4
v5.18.5
v5.18.6
v5.18.7
v5.18.8
v5.18.9
v5.19-rc1
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

Database specific

vanir_signatures

[
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2f6ded79068cac8cff41d5d5632564165d98ee12",
        "id": "CVE-2022-49650-06dde021",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "function": "bam_pm_runtime_get_sync",
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Function",
        "digest": {
            "length": 108.0,
            "function_hash": "155528703319630912451339457427242805833"
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2f6ded79068cac8cff41d5d5632564165d98ee12",
        "id": "CVE-2022-49650-1609db69",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "function": "bam_dma_probe",
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Function",
        "digest": {
            "length": 4154.0,
            "function_hash": "143241935251842569235561662434859745025"
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0ac9c3dd0d6fe293cd5044cfad10bec27d171e4e",
        "id": "CVE-2022-49650-341b7c99",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "function": "bam_dma_probe",
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Function",
        "digest": {
            "length": 4298.0,
            "function_hash": "66981414006815509321077365904661263920"
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0ac9c3dd0d6fe293cd5044cfad10bec27d171e4e",
        "id": "CVE-2022-49650-56306fc4",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "function": "bam_dma_suspend",
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Function",
        "digest": {
            "length": 164.0,
            "function_hash": "254697918157575612205277246337544803522"
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b702a1077b51fcb39507cc3bd39206f539319a96",
        "id": "CVE-2022-49650-74171c9a",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "function": "bam_dma_suspend",
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Function",
        "digest": {
            "length": 164.0,
            "function_hash": "254697918157575612205277246337544803522"
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2f6ded79068cac8cff41d5d5632564165d98ee12",
        "id": "CVE-2022-49650-a2964492",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "function": "bam_dma_suspend",
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Function",
        "digest": {
            "length": 164.0,
            "function_hash": "254697918157575612205277246337544803522"
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2f6ded79068cac8cff41d5d5632564165d98ee12",
        "id": "CVE-2022-49650-b7290ba4",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Line",
        "digest": {
            "threshold": 0.9,
            "line_hashes": [
                "257299579696698766613766376901019848857",
                "41218649754110842231184604104900603520",
                "149530138897208901109104458882726967282",
                "63913840547617701189214160668054145872",
                "22311820784785695834791444833801977",
                "169582131782823897874211605653831831181",
                "42229874277019174393061262478168902796",
                "313898351836856682555535667884023001898",
                "126458448176202131420854886530324778964",
                "163213701701457361923642506434392585881",
                "320012594346337576477037014976833832337",
                "262988728463577752953507016597352220218",
                "42966820601034199137721232066554005471",
                "58280706960838341766581063734064353502",
                "70296853708511412792758621334300306822",
                "196498444593834320895981677122663357322",
                "288717169348361643839212374833190311094",
                "58280706960838341766581063734064353502",
                "70296853708511412792758621334300306822",
                "196498444593834320895981677122663357322",
                "288717169348361643839212374833190311094",
                "131078059978100167454738460557832651319",
                "12636692555213130670648497278146902913",
                "197049962647053350409523045389962051633",
                "91919857167851530810196778422043121104",
                "150411533986240476378478190051948474430",
                "32089451404182920079307424766399423520",
                "15191610761868393934772463362422787528",
                "260569048015662421503406360140050100967",
                "102818198829104165297749365230190635175",
                "190218990331299472135604924623624712478",
                "322620688046532224778513663860669538588",
                "28932669804154671821308481661342085175",
                "12128341756785064767207875530433447127",
                "203740218120997243632785886308999125519",
                "281801634989644354648968382584232528383",
                "62304684167797268442894674114082967678",
                "305691408177773215152522033426455626389",
                "88426089341270670006510689550706157876",
                "294987633348851555064861385556940576059",
                "220396366325178052539907103469290449065",
                "209171936608266055608358045307541498704",
                "324886748939469213526876135059514809789",
                "308233249910322795862468901569533217639",
                "30907648115702445412473221411127364660",
                "311052206700642891387119874049461676607",
                "260098360593703773921856884758943701263",
                "122004108579123123464041597715141927056",
                "221171981802105339141000408426214041422",
                "183080648807356451816435905881614781979",
                "235125132256436335862328025742092809804",
                "207934851506502393951374542022772685950"
            ]
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0ac9c3dd0d6fe293cd5044cfad10bec27d171e4e",
        "id": "CVE-2022-49650-c14bf569",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "function": "bam_pm_runtime_get_sync",
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Function",
        "digest": {
            "length": 108.0,
            "function_hash": "155528703319630912451339457427242805833"
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2f6ded79068cac8cff41d5d5632564165d98ee12",
        "id": "CVE-2022-49650-d8d478fc",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "function": "bam_dma_resume",
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Function",
        "digest": {
            "length": 206.0,
            "function_hash": "180483411140205088778253744241551505029"
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b702a1077b51fcb39507cc3bd39206f539319a96",
        "id": "CVE-2022-49650-dbc5d03a",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "function": "bam_pm_runtime_get_sync",
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Function",
        "digest": {
            "length": 108.0,
            "function_hash": "155528703319630912451339457427242805833"
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b702a1077b51fcb39507cc3bd39206f539319a96",
        "id": "CVE-2022-49650-dc557809",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "function": "bam_dma_resume",
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Function",
        "digest": {
            "length": 206.0,
            "function_hash": "180483411140205088778253744241551505029"
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b702a1077b51fcb39507cc3bd39206f539319a96",
        "id": "CVE-2022-49650-edd59f33",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Line",
        "digest": {
            "threshold": 0.9,
            "line_hashes": [
                "90517827246234928507929831336095931927",
                "41218649754110842231184604104900603520",
                "149530138897208901109104458882726967282",
                "63913840547617701189214160668054145872",
                "22311820784785695834791444833801977",
                "169582131782823897874211605653831831181",
                "42229874277019174393061262478168902796",
                "313898351836856682555535667884023001898",
                "126458448176202131420854886530324778964",
                "163213701701457361923642506434392585881",
                "320012594346337576477037014976833832337",
                "262988728463577752953507016597352220218",
                "42966820601034199137721232066554005471",
                "58280706960838341766581063734064353502",
                "70296853708511412792758621334300306822",
                "196498444593834320895981677122663357322",
                "288717169348361643839212374833190311094",
                "58280706960838341766581063734064353502",
                "70296853708511412792758621334300306822",
                "196498444593834320895981677122663357322",
                "288717169348361643839212374833190311094",
                "131078059978100167454738460557832651319",
                "12636692555213130670648497278146902913",
                "197049962647053350409523045389962051633",
                "91919857167851530810196778422043121104",
                "150411533986240476378478190051948474430",
                "32089451404182920079307424766399423520",
                "15191610761868393934772463362422787528",
                "260569048015662421503406360140050100967",
                "102818198829104165297749365230190635175",
                "190218990331299472135604924623624712478",
                "322620688046532224778513663860669538588",
                "28932669804154671821308481661342085175",
                "12128341756785064767207875530433447127",
                "203740218120997243632785886308999125519",
                "281801634989644354648968382584232528383",
                "62304684167797268442894674114082967678",
                "305691408177773215152522033426455626389",
                "88426089341270670006510689550706157876",
                "294987633348851555064861385556940576059",
                "220396366325178052539907103469290449065",
                "209171936608266055608358045307541498704",
                "324886748939469213526876135059514809789",
                "308233249910322795862468901569533217639",
                "30907648115702445412473221411127364660",
                "311052206700642891387119874049461676607",
                "260098360593703773921856884758943701263",
                "122004108579123123464041597715141927056",
                "221171981802105339141000408426214041422",
                "183080648807356451816435905881614781979",
                "235125132256436335862328025742092809804",
                "207934851506502393951374542022772685950"
            ]
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0ac9c3dd0d6fe293cd5044cfad10bec27d171e4e",
        "id": "CVE-2022-49650-f81745ea",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Line",
        "digest": {
            "threshold": 0.9,
            "line_hashes": [
                "90517827246234928507929831336095931927",
                "41218649754110842231184604104900603520",
                "149530138897208901109104458882726967282",
                "63913840547617701189214160668054145872",
                "22311820784785695834791444833801977",
                "169582131782823897874211605653831831181",
                "42229874277019174393061262478168902796",
                "313898351836856682555535667884023001898",
                "126458448176202131420854886530324778964",
                "163213701701457361923642506434392585881",
                "320012594346337576477037014976833832337",
                "262988728463577752953507016597352220218",
                "42966820601034199137721232066554005471",
                "58280706960838341766581063734064353502",
                "70296853708511412792758621334300306822",
                "196498444593834320895981677122663357322",
                "288717169348361643839212374833190311094",
                "58280706960838341766581063734064353502",
                "70296853708511412792758621334300306822",
                "196498444593834320895981677122663357322",
                "288717169348361643839212374833190311094",
                "131078059978100167454738460557832651319",
                "12636692555213130670648497278146902913",
                "197049962647053350409523045389962051633",
                "91919857167851530810196778422043121104",
                "150411533986240476378478190051948474430",
                "32089451404182920079307424766399423520",
                "15191610761868393934772463362422787528",
                "260569048015662421503406360140050100967",
                "102818198829104165297749365230190635175",
                "190218990331299472135604924623624712478",
                "322620688046532224778513663860669538588",
                "28932669804154671821308481661342085175",
                "12128341756785064767207875530433447127",
                "203740218120997243632785886308999125519",
                "281801634989644354648968382584232528383",
                "62304684167797268442894674114082967678",
                "305691408177773215152522033426455626389",
                "88426089341270670006510689550706157876",
                "294987633348851555064861385556940576059",
                "220396366325178052539907103469290449065",
                "209171936608266055608358045307541498704",
                "324886748939469213526876135059514809789",
                "308233249910322795862468901569533217639",
                "30907648115702445412473221411127364660",
                "311052206700642891387119874049461676607",
                "260098360593703773921856884758943701263",
                "122004108579123123464041597715141927056",
                "221171981802105339141000408426214041422",
                "183080648807356451816435905881614781979",
                "235125132256436335862328025742092809804",
                "207934851506502393951374542022772685950"
            ]
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b702a1077b51fcb39507cc3bd39206f539319a96",
        "id": "CVE-2022-49650-f98c1cdf",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "function": "bam_dma_probe",
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Function",
        "digest": {
            "length": 4298.0,
            "function_hash": "66981414006815509321077365904661263920"
        }
    },
    {
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0ac9c3dd0d6fe293cd5044cfad10bec27d171e4e",
        "id": "CVE-2022-49650-fd2830bc",
        "deprecated": false,
        "signature_version": "v1",
        "target": {
            "function": "bam_dma_resume",
            "file": "drivers/dma/qcom/bam_dma.c"
        },
        "signature_type": "Function",
        "digest": {
            "length": 206.0,
            "function_hash": "180483411140205088778253744241551505029"
        }
    }
]

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
4.17.0
Fixed
5.15.54
Type
ECOSYSTEM
Events
Introduced
5.16.0
Fixed
5.18.11