CVE-2022-50569

Source
https://cve.org/CVERecord?id=CVE-2022-50569
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-50569.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2022-50569
Downstream
Related
Published
2025-10-22T13:23:25.810Z
Modified
2026-03-20T11:47:31.612862Z
Summary
xfrm: Update ipcomp_scratches with NULL when freed
Details

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

xfrm: Update ipcomp_scratches with NULL when freed

Currently if ipcompallocscratches() fails to allocate memory ipcompscratches holds obsolete address. So when we try to free the percpu scratches using ipcompfree_scratches() it tries to vfree non existent vm area. Described below:

static void * _percpu *ipcompallocscratches(void) { ... scratches = allocpercpu(void *); if (!scratches) return NULL; ipcomp_scratches does not know about this allocation failure. Therefore holding the old obsolete address. ... }

So when we free,

static void ipcompfreescratches(void) { ... scratches = ipcompscratches; Assigning obsolete address from ipcompscratches

    if (!scratches)
            return;

    for_each_possible_cpu(i)
           vfree(*per_cpu_ptr(scratches, i));

Trying to free non existent page, causing warning: trying to vfree existent vm area. ... }

Fix this breakage by updating ipcomp_scrtches with NULL when scratches is freed

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/50xxx/CVE-2022-50569.json",
    "cna_assigner": "Linux"
}
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
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2
Fixed
debca61df6bc2f65e020656c9c5b878d6b38d30f
Fixed
a39f456d62810c0efb43cead22f98d95b53e4b1a
Fixed
1e8abde895b3ac6a368cbdb372e8800c49e73a28
Fixed
18373ed500f7cd53e24d9b0bd0f1c09d78dba87e
Fixed
be81c44242b20fc3bdcc73480ef8aaee56f5d0b6
Fixed
03155680191ef0f004b1d6a5714c5b8cd271ab61
Fixed
f3bdba4440d82e0da2b1bfc35d3836c8a8e00677
Fixed
2c19945ce8095d065df550e7fe350cd5cc40c6e6
Fixed
8a04d2fc700f717104bfb95b0f6694e448a4537f

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-50569.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
2.6.12
Fixed
4.9.331
Type
ECOSYSTEM
Events
Introduced
4.10.0
Fixed
4.14.296
Type
ECOSYSTEM
Events
Introduced
4.15.0
Fixed
4.19.262
Type
ECOSYSTEM
Events
Introduced
4.20.0
Fixed
5.4.220
Type
ECOSYSTEM
Events
Introduced
5.5.0
Fixed
5.10.150
Type
ECOSYSTEM
Events
Introduced
5.11.0
Fixed
5.15.75
Type
ECOSYSTEM
Events
Introduced
5.16.0
Fixed
5.19.17
Type
ECOSYSTEM
Events
Introduced
5.20.0
Fixed
6.0.3

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-50569.json"