CVE-2022-48780

Source
https://nvd.nist.gov/vuln/detail/CVE-2022-48780
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-48780.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2022-48780
Downstream
Related
Published
2024-07-16T11:13:17Z
Modified
2025-10-08T06:00:38.236120Z
Summary
net/smc: Avoid overwriting the copies of clcsock callback functions
Details

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

net/smc: Avoid overwriting the copies of clcsock callback functions

The callback functions of clcsock will be saved and replaced during the fallback. But if the fallback happens more than once, then the copies of these callback functions will be overwritten incorrectly, resulting in a loop call issue:

clcsk->skerrorreport |- smcfbackerrorreport() <------------------------------| |- smcfbackforwardwakeup() | (loop) |- clcsockcallback() (incorrectly overwritten) | |- smc->clcskerror_report() ------------------|

So this patch fixes the issue by saving these function pointers only once in the fallback and avoiding overwriting.

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
0ef6049f664941bc0f75828b3a61877635048b27
Fixed
7de7ba7a8bd4fde0141de8674c13514d0072f0e6
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
504078fbe9dd570d685361b57784a6050bc40aaa
Fixed
f00b6c976ae0dfbd9b891175f713f59095d23842
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
341adeec9adad0874f29a0a1af35638207352a39
Fixed
1de9770d121ee9294794cca0e0be8fbfa0134ee8

Affected versions

v5.*

v5.15.22
v5.15.23
v5.15.24
v5.16.10
v5.16.8
v5.16.9
v5.17-rc2
v5.17-rc3

Database specific

{
    "vanir_signatures": [
        {
            "signature_version": "v1",
            "digest": {
                "length": 1168.0,
                "function_hash": "277514690307747790470982246835440707082"
            },
            "id": "CVE-2022-48780-3c4274ec",
            "deprecated": false,
            "target": {
                "file": "net/smc/af_smc.c",
                "function": "smc_switch_to_fallback"
            },
            "signature_type": "Function",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7de7ba7a8bd4fde0141de8674c13514d0072f0e6"
        },
        {
            "signature_version": "v1",
            "digest": {
                "threshold": 0.9,
                "line_hashes": [
                    "167944346300054745282735736106077428949",
                    "52405173870688063298651228540148296891",
                    "64054446620057753046295662126998387234",
                    "6480936261941358984277808904722432220",
                    "5126352606281903128004075250628091176",
                    "275937257363092955009001316919977322815",
                    "313987029026646669074294026239426245457",
                    "114041996912457746558376769502518206670",
                    "321340123823187622476483179417174402089",
                    "70366721335734935448421416748959610346",
                    "158455778052937850841668383238229480247",
                    "246039312177377129672445545922069075733",
                    "162658445934824173732683495891855891534",
                    "42125653395252953916891423820540929739",
                    "334764714684719101552875090230438559717",
                    "118143521438112921130459211706756666930"
                ]
            },
            "id": "CVE-2022-48780-4bad86bc",
            "deprecated": false,
            "target": {
                "file": "net/smc/af_smc.c"
            },
            "signature_type": "Line",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1de9770d121ee9294794cca0e0be8fbfa0134ee8"
        },
        {
            "signature_version": "v1",
            "digest": {
                "threshold": 0.9,
                "line_hashes": [
                    "167944346300054745282735736106077428949",
                    "52405173870688063298651228540148296891",
                    "64054446620057753046295662126998387234",
                    "6480936261941358984277808904722432220",
                    "5126352606281903128004075250628091176",
                    "275937257363092955009001316919977322815",
                    "313987029026646669074294026239426245457",
                    "114041996912457746558376769502518206670",
                    "321340123823187622476483179417174402089",
                    "70366721335734935448421416748959610346",
                    "158455778052937850841668383238229480247",
                    "246039312177377129672445545922069075733",
                    "162658445934824173732683495891855891534",
                    "42125653395252953916891423820540929739",
                    "334764714684719101552875090230438559717",
                    "118143521438112921130459211706756666930"
                ]
            },
            "id": "CVE-2022-48780-5a5bdadc",
            "deprecated": false,
            "target": {
                "file": "net/smc/af_smc.c"
            },
            "signature_type": "Line",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7de7ba7a8bd4fde0141de8674c13514d0072f0e6"
        },
        {
            "signature_version": "v1",
            "digest": {
                "length": 1197.0,
                "function_hash": "312862722644734456509820763395284750483"
            },
            "id": "CVE-2022-48780-cb1ace47",
            "deprecated": false,
            "target": {
                "file": "net/smc/af_smc.c",
                "function": "smc_switch_to_fallback"
            },
            "signature_type": "Function",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1de9770d121ee9294794cca0e0be8fbfa0134ee8"
        }
    ]
}

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
5.15.22
Fixed
5.15.25
Type
ECOSYSTEM
Events
Introduced
5.16.8
Fixed
5.16.11