CVE-2026-64092
batman-adv: tp_meter: fix tp_vars reference leak in receiver shutdown
Description
In the Linux kernel, the following vulnerability has been resolved: batman-adv: tp_meter: fix tp_vars reference leak in receiver shutdown The receiver shutdown timer handler, batadv_tp_receiver_shutdown(), is responsible for releasing the tp_vars reference it holds. However, the existing logic for coordinating this release with batadv_tp_stop_all() was flawed. timer_shutdown_sync() guarantees the timer will not fire again after it returns, but it returns non-zero only when the timer was pending at the time of the call. If the timer had already expired (and batadv_tp_stop_all() would unsucessfully try to rearm itself), batadv_tp_stop_all() skips its batadv_tp_vars_put(), and batadv_tp_receiver_shutdown() fails to put its own reference as well. Fix this by introducing a new atomic variable receiving that is set to 1 when the receiver is initialized and cleared atomically with atomic_xchg() by whichever side claims it first. Only the side that observes the transition from 1 to 0 is responsible for releasing the tp_vars timer reference, eliminating the uncertainty.
INFO
Published Date :
July 19, 2026, 4:17 p.m.
Last Modified :
July 19, 2026, 4:17 p.m.
Remotely Exploit :
No
Source :
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Affected Products
The following products are affected by CVE-2026-64092
vulnerability.
Even if cvefeed.io is aware of the exact versions of the
products
that
are
affected, the information is not represented in the table below.
No affected product recoded yet
Solution
- Update the Linux kernel to the latest version.
- Apply the provided patch for batman-adv.
- Verify the fix by testing receiver shutdown.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-64092.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-64092 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-64092
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-64092 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-64092 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Jul. 19, 2026
Action Type Old Value New Value Added Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '268078acae72daa12b17b2b299701cb9924e469a', 'lessThan': '7715c73f33260af724d734c41b794457e9be8dbc', 'versionType': 'git'}, {'status': 'affected', 'version': '58943b7ea356294749dae3e75b96c0ee292c00be', 'lessThan': '297e1bc4a915b7cd3e65a79ed906b23fb3d7aaae', 'versionType': 'git'}, {'status': 'affected', 'version': '79bc0eaeef2c5797317bf2da8e3159a74d62ec47', 'lessThan': '0b1bedf114ea93fef929b31f0d70a9eedcc601de', 'versionType': 'git'}, {'status': 'affected', 'version': '26dfeee8db81354bfdade155f27f9e16510ad196', 'lessThan': 'a9f0bfd624ee8a286d6fd2bf0f796e730efb49b0', 'versionType': 'git'}, {'status': 'affected', 'version': '03660dab86f93319178a24667f6998526dc4355d', 'lessThan': 'b285bc0a97f43823a4967fb6d286de4c7f53d541', 'versionType': 'git'}, {'status': 'affected', 'version': '8634c1dbd73adb74d40533ebb7e914efb82e71fb', 'lessThan': 'd078501dde9b57210f1808cdef4b59463d1f5fc8', 'versionType': 'git'}, {'status': 'affected', 'version': '3d3cf6a7314aca4df0a6dde28ce784a2a30d0166', 'lessThan': '77098e4bea37af51d3962efa88a5af2ea5e1ac57', 'versionType': 'git'}, {'status': 'affected', 'version': '5e7d0ac936354c36810e74ac3056b334ed1f4058', 'versionType': 'git'}, {'status': 'affected', 'version': '5.10.259', 'lessThan': '5.11', 'versionType': 'semver'}], 'programFiles': ['net/batman-adv/tp_meter.c', 'net/batman-adv/types.h'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '6.6.140', 'lessThan': '6.6.142', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.12.90', 'lessThan': '6.12.92', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.18.32', 'lessThan': '6.18.34', 'versionType': 'semver'}, {'status': 'affected', 'version': '7.0.9', 'lessThan': '7.0.11', 'versionType': 'semver'}], 'programFiles': ['net/batman-adv/tp_meter.c', 'net/batman-adv/types.h'], 'defaultStatus': 'unaffected'}] Added Description In the Linux kernel, the following vulnerability has been resolved: batman-adv: tp_meter: fix tp_vars reference leak in receiver shutdown The receiver shutdown timer handler, batadv_tp_receiver_shutdown(), is responsible for releasing the tp_vars reference it holds. However, the existing logic for coordinating this release with batadv_tp_stop_all() was flawed. timer_shutdown_sync() guarantees the timer will not fire again after it returns, but it returns non-zero only when the timer was pending at the time of the call. If the timer had already expired (and batadv_tp_stop_all() would unsucessfully try to rearm itself), batadv_tp_stop_all() skips its batadv_tp_vars_put(), and batadv_tp_receiver_shutdown() fails to put its own reference as well. Fix this by introducing a new atomic variable receiving that is set to 1 when the receiver is initialized and cleared atomically with atomic_xchg() by whichever side claims it first. Only the side that observes the transition from 1 to 0 is responsible for releasing the tp_vars timer reference, eliminating the uncertainty. Added Reference https://git.kernel.org/stable/c/0b1bedf114ea93fef929b31f0d70a9eedcc601de Added Reference https://git.kernel.org/stable/c/297e1bc4a915b7cd3e65a79ed906b23fb3d7aaae Added Reference https://git.kernel.org/stable/c/77098e4bea37af51d3962efa88a5af2ea5e1ac57 Added Reference https://git.kernel.org/stable/c/7715c73f33260af724d734c41b794457e9be8dbc Added Reference https://git.kernel.org/stable/c/a9f0bfd624ee8a286d6fd2bf0f796e730efb49b0 Added Reference https://git.kernel.org/stable/c/b285bc0a97f43823a4967fb6d286de4c7f53d541 Added Reference https://git.kernel.org/stable/c/d078501dde9b57210f1808cdef4b59463d1f5fc8