In the Linux kernel, the following vulnerability has been resolved: vfs: fix race between evice_inodes() and find_inode()&iput() Hi, all Recently I noticed a bug[1] in btrfs, after digged it into and I believe it'a race in vfs. Let's assume there's a inode (ie ino 261) with i_count 1 is called by iput(), and there's a concurrent thread calling generic_shutdown_super(). cpu0: cpu1: iput() // i_count is 1 ->spin_lock(inode) ->dec i_count to 0 ->iput_final() generic_shutdown_super() ->__inode_add_lru() ->evict_inodes() // cause some reason[2] ->if (atomic_read(inode->i_count)) continue; // return before // inode 261 passed the above check // list_lru_add_obj() // and then schedule out ->spin_unlock() // note here: the inode 261 // was still at sb list and hash list, // and I_FREEING|I_WILL_FREE was not been set btrfs_iget() // after some function calls ->find_inode() // found the above inode 261 ->spin_lock(inode) // check I_FREEING|I_WILL_FREE // and passed ->__iget() ->spin_unlock(inode) // schedule back ->spin_lock(inode) // check (I_NEW|I_FREEING|I_WILL_FREE) flags, // passed and set I_FREEING iput() ->spin_unlock(inode) ->spin_lock(inode) ->evict() // dec i_count to 0 ->iput_final() ->spin_unlock() ->evict() Now, we have two threads simultaneously evicting the same inode, which may trigger the BUG(inode->i_state & I_CLEAR) statement both within clear_inode() and iput(). To fix the bug, recheck the inode->i_count after holding i_lock. Because in the most scenarios, the first check is valid, and the overhead of spin_lock() can be reduced. If there is any misunderstanding, please let me know, thanks. [1]: https://lore.kernel.org/linux-btrfs/[email protected]/ [2]: The reason might be 1. SB_ACTIVE was removed or 2. mapping_shrinkable() return false when I reproduced the bug.
This page covers CVE-2024-47679 as tracked by Ubuntu, for the package linux. The fix is available in version 6.8.0-54.56; earlier versions remain affected.
This issue can be reached with local access to the system, attack complexity is low, an attacker needs low-level privileges on the target. No user interaction is required. The scope is unchanged, so the impact stays within the vulnerable component. Rated impact: confidentiality high, integrity high, availability high.
The score comes from this vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
UBUNTU-CVE-2024-47679 is recorded against 134 packages.
Published on 21 October 2024 and last revised on 19 August 2026. No public exploit is currently recorded for this entry. Record sourced from OSV.
ubuntu.com (Report)
www.cve.org (Report)
git.kernel.org (Report)
git.kernel.org (Report)
git.kernel.org (Report)
git.kernel.org (Report)
git.kernel.org (Report)
git.kernel.org (Report)
git.kernel.org (Report)
git.kernel.org (Report)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
ubuntu.com (Advisory)
linux has other advisories on record. If you are patching this one, these are worth checking on the same host:
Each distribution ships its own build and its own fixed version. Pick the one you run:
Details
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Affected Packages
| Software | From version | Fixed in |
|---|---|---|
| linux | — | 6.8.0-54.56 |
| linux-allwinner-5.19 | — | — |
| linux-aws | — | 6.8.0-1023.25 |
| linux-aws-5.0 | — | — |
| linux-aws-5.11 | — | — |
| linux-aws-5.13 | — | — |
| linux-aws-5.15 | — | 5.15.0-1073.79~20.04.1 |
| linux-aws-5.19 | — | — |
| linux-aws-5.3 | — | — |
| linux-aws-5.4 | — | 5.4.0-1142.152~18.04.1 |
| linux-aws-5.8 | — | — |
| linux-aws-6.2 | — | — |
| linux-aws-6.5 | — | — |
| linux-aws-6.8 | — | 6.8.0-1023.25~22.04.1 |
| linux-aws-fips | — | 5.15.0-1073.79+fips1 |
| linux-aws-hwe | — | — |
| linux-azure | — | 6.8.0-1025.30 |
| linux-azure-4.15 | — | — |
| linux-azure-5.11 | — | — |
| linux-azure-5.13 | — | — |
| linux-azure-5.15 | — | 5.15.0-1078.87~20.04.1 |
| linux-azure-5.19 | — | — |
| linux-azure-5.3 | — | — |
| linux-azure-5.4 | — | 5.4.0-1145.152~18.04.1 |
| linux-azure-5.8 | — | — |
| linux-azure-6.11 | — | 6.11.0-1012.12~24.04.1 |
| linux-azure-6.2 | — | — |
| linux-azure-6.5 | — | — |
| linux-azure-6.8 | — | 6.8.0-1025.30~22.04.1 |
| linux-azure-edge | — | — |
| linux-azure-fde | — | — |
| linux-azure-fde-5.19 | — | — |
| linux-azure-fde-6.2 | — | — |
| linux-azure-fips | — | 5.15.0-1078.87+fips1 |
| linux-azure-nvidia | — | 6.8.0-1014.15 |
| linux-bluefield | — | — |
| linux-fips | — | 6.8.0-78.78+fips1 |
| linux-gcp | — | 6.8.0-1024.26 |
| linux-gcp-4.15 | — | — |
| linux-gcp-5.11 | — | — |
| linux-gcp-5.13 | — | — |
| linux-gcp-5.15 | — | 5.15.0-1072.80~20.04.1 |
| linux-gcp-5.19 | — | — |
| linux-gcp-5.3 | — | — |
| linux-gcp-5.4 | — | 5.4.0-1143.152~18.04.1 |
| linux-gcp-5.8 | — | — |
| linux-gcp-6.11 | — | 6.11.0-1011.11~24.04.1 |
| linux-gcp-6.2 | — | — |
| linux-gcp-6.5 | — | — |
| linux-gcp-6.8 | — | 6.8.0-1024.26~22.04.1 |
| linux-gcp-fips | — | 5.15.0-1072.80+fips1 |
| linux-gke | — | 6.8.0-1019.23 |
| linux-gke-4.15 | — | — |
| linux-gke-5.15 | — | — |
| linux-gke-5.4 | — | — |
| linux-gkeop | — | 6.8.0-1006.8 |
| linux-gkeop-5.15 | — | — |
| linux-gkeop-5.4 | — | — |
| linux-hwe | — | — |
| linux-hwe-5.11 | — | — |
| linux-hwe-5.13 | — | — |
| linux-hwe-5.15 | — | 5.15.0-127.137~20.04.1 |
| linux-hwe-5.19 | — | — |
| linux-hwe-5.4 | — | 5.4.0-208.228~18.04.1 |
| linux-hwe-5.8 | — | — |
| linux-hwe-6.2 | — | — |
| linux-hwe-6.5 | — | — |
| linux-hwe-6.8 | — | 6.8.0-57.59~22.04.1 |
| linux-hwe-edge | — | — |
| linux-ibm | — | 6.8.0-1022.22 |
| linux-ibm-5.15 | — | 5.15.0-1066.69~20.04.1 |
| linux-ibm-5.4 | — | 5.4.0-1086.91~18.04.1 |
| linux-ibm-6.8 | — | 6.8.0-1023.23~22.04.1 |
| linux-intel-5.13 | — | — |
| linux-intel-iot-realtime | — | 5.15.0-1066.68 |
| linux-intel-iotg | — | 5.15.0-1071.77 |
| linux-intel-iotg-5.15 | — | 5.15.0-1071.77~20.04.1 |
| linux-iot | — | 5.4.0-1048.51 |
| linux-kvm | — | 5.15.0-1070.75 |
| linux-lowlatency | — | 6.8.0-54.56.1 |
| linux-lowlatency-hwe-5.15 | — | 5.15.0-127.137~20.04.1 |
| linux-lowlatency-hwe-5.19 | — | — |
| linux-lowlatency-hwe-6.2 | — | — |
| linux-lowlatency-hwe-6.5 | — | — |
| linux-lowlatency-hwe-6.8 | — | 6.8.0-54.56.1~22.04.1 |
| linux-lts-xenial | — | — |
| linux-nvidia | — | 6.8.0-1022.25 |
| linux-nvidia-6.11 | — | 6.11.0-1007.7 |
| linux-nvidia-6.2 | — | — |
| linux-nvidia-6.5 | — | — |
| linux-nvidia-6.8 | — | 6.8.0-1022.25~22.04.2 |
| linux-nvidia-lowlatency | — | 6.8.0-1022.25.2 |
| linux-nvidia-tegra | — | 5.15.0-1032.32 |
| linux-nvidia-tegra-5.15 | — | 5.15.0-1032.32~20.04.1 |
| linux-nvidia-tegra-igx | — | 5.15.0-1020.20 |
| linux-oem | — | — |
| linux-oem-5.10 | — | — |
| linux-oem-5.13 | — | — |
| linux-oem-5.14 | — | — |
| linux-oem-5.17 | — | — |
| linux-oem-5.6 | — | — |
| linux-oem-6.0 | — | — |
| linux-oem-6.1 | — | — |
| linux-oem-6.11 | — | 6.11.0-1015.15 |
| linux-oem-6.5 | — | — |
| linux-oem-6.8 | — | 6.8.0-1024.24 |
| linux-oracle | — | 6.8.0-1020.21 |
| linux-oracle-5.0 | — | — |
| linux-oracle-5.11 | — | — |
| linux-oracle-5.13 | — | — |
| linux-oracle-5.15 | — | 5.15.0-1071.77~20.04.1 |
| linux-oracle-5.3 | — | — |
| linux-oracle-5.4 | — | 5.4.0-1138.147~18.04.1 |
| linux-oracle-5.8 | — | — |
| linux-oracle-6.5 | — | — |
| linux-oracle-6.8 | — | 6.8.0-1020.21~22.04.1 |
| linux-raspi | — | 6.8.0-1019.23 |
| linux-raspi-5.4 | — | 5.4.0-1129.142~18.04.1 |
| linux-raspi-realtime | — | 6.8.0-2018.19 |
| linux-raspi2 | — | — |
| linux-realtime | — | 6.8.1-1016.17 |
| linux-realtime-6.8 | — | 6.8.1-1016.17~22.04.1 |
| linux-riscv | — | 6.8.0-53.55.1 |
| linux-riscv-5.11 | — | — |
| linux-riscv-5.15 | — | 5.15.0-1069.73~20.04.1 |
| linux-riscv-5.19 | — | — |
| linux-riscv-5.8 | — | — |
| linux-riscv-6.5 | — | — |
| linux-riscv-6.8 | — | 6.8.0-53.55.1~22.04.1 |
| linux-starfive-5.19 | — | — |
| linux-starfive-6.2 | — | — |
| linux-starfive-6.5 | — | — |
| linux-xilinx | — | 6.8.0-1017.18 |
| linux-xilinx-zynqmp | — | 5.15.0-1039.43 |
References
Similar Threats
Site Security Check
UBUNTU-CVE-2024-47679 is rated CVSS 7.8 High. BotEraser scans your installation against known CVE records and tells you whether this vulnerability applies to the versions you actually run.
Scan My Site Free →No credit card required · Results in minutes
ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.
Stay up to date with the latest from Boteraser.
We use cookies to improve your experience on our site. By using our site, you consent to cookies.
Manage your cookie preferences below:
Essential cookies enable basic functions and are necessary for the proper function of the website.
CloudFlare provides web performance and security solutions, enhancing site speed and protecting against threats.
Service URL: developers.cloudflare.com (opens in a new window)
These cookies are needed for adding comments on this website.
These cookies are used for managing login functionality on this website.
Statistics cookies collect information anonymously. This information helps us understand how visitors use our website.
Google Analytics is a powerful tool that tracks and analyzes website traffic for informed marketing decisions.
Service URL: policies.google.com (opens in a new window)
You can find more information in our Cookie Policy and Privacy Policy.