CVE-2025-38100: Linux kernel · x86/iopl: Cure TIF_IO_BITMAP inconsistencies
Affects Linux kernelSource GCVE Database
Not known to be exploited · CVSS 5.5 Medium · fixed in 5.15.0-1092.99~20.04.1 : update Linux kernel when convenient.
Data as of 26 Oct 2026, 14:05 UTC
- EPSS
- 0.2% chance of exploitation in 30 days – higher than 11% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in 5.15.0-1092.99~20.04.1, 5.15.0-1096.105~20.04.1, 5.15.0-1092.101~20.04.1 +59
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HExploitation evidence
Disclosed: evidence found.
CVE published 3 Jul 2025
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Upgrade to a fixed release listed under Affected software.
Patches and advisories
- ubuntu.com/security/notices/USN-7769-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7770-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7771-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7769-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7774-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7774-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7774-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7775-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7776-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7769-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7775-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7775-3 (opens in a new tab)
Affected software
| Product | Affected | Fixed in |
|---|---|---|
Ubuntu 25.10linux-azure-fdepkg:deb/ubuntu/linux-azure-fde?arch=source&distro=questingOther threats | Affected
| Fixed in– |
Ubuntu 24.04 LTSlinuxpkg:deb/ubuntu/linux?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-awspkg:deb/ubuntu/linux-aws?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-aws-6.14pkg:deb/ubuntu/linux-aws-6.14?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-azurepkg:deb/ubuntu/linux-azure?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-azure-6.11pkg:deb/ubuntu/linux-azure-6.11?arch=source&distro=nobleOther threats | Affected
| Fixed in– |
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
Description
In the Linux kernel, the following vulnerability has been resolved: x86/iopl: Cure TIF_IO_BITMAP inconsistencies io_bitmap_exit() is invoked from exit_thread() when a task exists or when a fork fails. In the latter case the exit_thread() cleans up resources which were allocated during fork(). io_bitmap_exit() invokes task_update_io_bitmap(), which in turn ends up in tss_update_io_bitmap(). tss_update_io_bitmap() operates on the current task. If current has TIF_IO_BITMAP set, but no bitmap installed, tss_update_io_bitmap() crashes with a NULL pointer dereference. There are two issues, which lead to that problem: 1) io_bitmap_exit() should not invoke task_update_io_bitmap() when the task, which is cleaned up, is not the current task. That's a clear indicator for a cleanup after a failed fork(). 2) A task should not have TIF_IO_BITMAP set and neither a bitmap installed nor IOPL emulation level 3 activated. This happens when a kernel thread is created in the context of a user space thread, which has TIF_IO_BITMAP set as the thread flags are copied and the IO bitmap pointer is cleared. Other than in the failed fork() case this has no impact because kernel threads including IO workers never return to user space and therefore never invoke tss_update_io_bitmap(). Cure this by adding the missing cleanups and checks: 1) Prevent io_bitmap_exit() to invoke task_update_io_bitmap() if the to be cleaned up task is not the current task. 2) Clear TIF_IO_BITMAP in copy_thread() unconditionally. For user space forks it is set later, when the IO bitmap is inherited in io_bitmap_share(). For paranoia sake, add a warning into tss_update_io_bitmap() to catch the case, when that code is invoked with inconsistent state.
References
- ubuntu.com/security/CVE-2025-38100 (opens in a new tab)
- cve.org/CVERecord?id=CVE-2025-38100 (opens in a new tab)
- git.kernel.org/linus/8b68e978718f14fdcb080c2a7791c52a0d09bc6d (opens in a new tab)
- git.kernel.org/stable/c/2cfcbe1554c119402e7382de974c26b0549899fe (opens in a new tab)
- git.kernel.org/stable/c/2dace5e016c991424a3dc6e83b1ae5dca8992d08 (opens in a new tab)
- git.kernel.org/stable/c/73cfcc8445585b8af7e18be3c9246b851fdf336c (opens in a new tab)
- git.kernel.org/stable/c/8b68e978718f14fdcb080c2a7791c52a0d09bc6d (opens in a new tab)
- git.kernel.org/stable/c/aa5ce1485562f20235b4c759eee5ab0c41d2c220 (opens in a new tab)
- git.kernel.org/stable/c/b3b3b6366dc8eb5b22edba9adc4bff3cdacfd64c (opens in a new tab)
- git.kernel.org/stable/c/d64b7b05a827f98d068f412969eef65489b0cf03 (opens in a new tab)
- ubuntu.com/security/notices/USN-7769-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7770-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7771-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7769-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7774-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7774-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7774-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7775-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7776-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7769-3 (opens in a new tab)