CVE-2022-49815

Source
https://nvd.nist.gov/vuln/detail/CVE-2022-49815
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-49815.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2022-49815
Downstream
Published
2025-05-01T14:09:39Z
Modified
2025-10-08T11:15:59.762695Z
Summary
erofs: fix missing xas_retry() in fscache mode
Details

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

erofs: fix missing xas_retry() in fscache mode

The xarray iteration only holds the RCU read lock and thus may encounter XARETRYENTRY if there's process modifying the xarray concurrently. This will cause oops when referring to the invalid entry.

Fix this by adding the missing xasretry(), which will make the iteration wind back to the root node if XARETRY_ENTRY is encountered.

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
d435d53228dd039fffecae123b8c138af6f96f99
Fixed
dbc98fe99e17ed18f2f272d5fe880d844b1c68c3
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
d435d53228dd039fffecae123b8c138af6f96f99
Fixed
37020bbb71d911431e16c2c940b97cf86ae4f2f6

Affected versions

v5.*

v5.18
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

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.0.1
v6.0.2
v6.0.3
v6.0.4
v6.0.5
v6.0.6
v6.0.7
v6.0.8
v6.0.9
v6.1-rc1
v6.1-rc2
v6.1-rc3
v6.1-rc4

Database specific

{
    "vanir_signatures": [
        {
            "signature_version": "v1",
            "digest": {
                "threshold": 0.9,
                "line_hashes": [
                    "253449923531819526366772652843655733517",
                    "337454962443984553731669794169467557336",
                    "127946933739298722291129786994761145583",
                    "114353526860974379556992587014794631355",
                    "307806711971364734609601816831702833196",
                    "186659782890191041575137493199793193889",
                    "55217904426352896351492941418217551418"
                ]
            },
            "id": "CVE-2022-49815-42532743",
            "deprecated": false,
            "target": {
                "file": "fs/erofs/fscache.c"
            },
            "signature_type": "Line",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@37020bbb71d911431e16c2c940b97cf86ae4f2f6"
        },
        {
            "signature_version": "v1",
            "digest": {
                "length": 954.0,
                "function_hash": "299379219211324010275987837860050104285"
            },
            "id": "CVE-2022-49815-987ee6ac",
            "deprecated": false,
            "target": {
                "file": "fs/erofs/fscache.c",
                "function": "erofs_fscache_rreq_unlock_folios"
            },
            "signature_type": "Function",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@37020bbb71d911431e16c2c940b97cf86ae4f2f6"
        },
        {
            "signature_version": "v1",
            "digest": {
                "length": 954.0,
                "function_hash": "299379219211324010275987837860050104285"
            },
            "id": "CVE-2022-49815-d04a4214",
            "deprecated": false,
            "target": {
                "file": "fs/erofs/fscache.c",
                "function": "erofs_fscache_rreq_unlock_folios"
            },
            "signature_type": "Function",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dbc98fe99e17ed18f2f272d5fe880d844b1c68c3"
        },
        {
            "signature_version": "v1",
            "digest": {
                "threshold": 0.9,
                "line_hashes": [
                    "253449923531819526366772652843655733517",
                    "337454962443984553731669794169467557336",
                    "127946933739298722291129786994761145583",
                    "114353526860974379556992587014794631355",
                    "307806711971364734609601816831702833196",
                    "186659782890191041575137493199793193889",
                    "55217904426352896351492941418217551418"
                ]
            },
            "id": "CVE-2022-49815-ef174720",
            "deprecated": false,
            "target": {
                "file": "fs/erofs/fscache.c"
            },
            "signature_type": "Line",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dbc98fe99e17ed18f2f272d5fe880d844b1c68c3"
        }
    ]
}

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
5.19.0
Fixed
6.0.10