CVE Catalog

CVE-2026-23164

MediumCVSS 5.5
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.13%

3th percentile - higher than 3% of all known CVEs

Summary

In the Linux kernel, the rocker driver has a memory leak in rocker_world_port_post_fini(). The wpriv memory allocated for each port is not freed when the port_post_fini callback is NULL (as in rocker_ofdpa_ops), leading to a memory leak on every device removal.

Risk Assessment

A local attacker or privileged user could repeatedly remove rocker devices, causing gradual kernel memory exhaustion and eventually denial of service (DoS).

Recommendation

Update the Linux kernel to a version containing the fix that always frees rocker_port->wpriv regardless of whether the port_post_fini callback exists.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: rocker: fix memory leak in rocker_world_port_post_fini() In rocker_world_port_pre_init(), rocker_port->wpriv is allocated with kzalloc(wops->port_priv_size, GFP_KERNEL). However, in rocker_world_port_post_fini(), the memory is only freed when wops->port_post_fini callback is set: if (!wops->port_post_fini) return; wops->port_post_fini(rocker_port); kfree(rocker_port->wpriv); Since rocker_ofdpa_ops does not implement port_post_fini callback (it is NULL), the wpriv memory allocated for each port is never freed when ports are removed. This leads to a memory leak of sizeof(struct ofdpa_port) bytes per port on every device removal. Fix this by always calling kfree(rocker_port->wpriv) regardless of whether the port_post_fini callback exists.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS