Vulnerability · Published Jun 24, 2024 · Assigned by Linux

CVE-2024-37021fpga: manager: add owner module and take its refcount

Medium 5.5

In plain English

A medium-severity security flaw in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 11% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS NVD)5.5Medium
Exploit odds (30 days)0.2%top 88.5% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

In the Linux kernel, the following vulnerability has been resolved: fpga: manager: add owner module and take its refcount The current implementation of the fpga manager assumes that the low-level module registers a driver for the parent device and uses its owner pointer to take the module's refcount. This approach is problematic since it can lead to a null pointer dereference while attempting to get the manager if the parent device does not have a driver. To address this problem, add a module owner pointer to the fpga_manager struct and use it to take the module's refcount. Modify the functions for registering the manager to take an additional owner module parameter and rename them to avoid conflicts. Use the old function names for helper macros that automatically set the module that registers the manager as the owner. This ensures compatibility with existing low-level control modules and reduces the chances of registering a manager without setting the owner. Also, update the documentation to keep it consistent with the new interface for registering an fpga manager. Other changes: opportunistically move put_device() from __fpga_mgr_get() to fpga_mgr_get() and of_fpga_mgr_get() to improve code clarity since the manager device is taken in these functions.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12linux6.1.123-1DEBIAN-CVE-2024-37021
Debian:13linux6.9.7-1DEBIAN-CVE-2024-37021
Debian:14linux6.9.7-1DEBIAN-CVE-2024-37021
Ubuntu:22.04:LTSlinuxno fix listedUBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux6.8.0-44.44UBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux6.8.0-44.44USN-6999-1
Ubuntu:22.04:LTSlinux-allwinner-5.19no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-awsno fix listedUBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-aws6.8.0-1015.16UBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-aws6.8.0-1015.16USN-6999-1
Ubuntu:22.04:LTSlinux-aws-5.19no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-aws-6.2no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-aws-6.5no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-aws-6.86.8.0-1015.16~22.04.1UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-azureno fix listedUBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-azure6.8.0-1014.16USN-7004-1
Ubuntu:24.04:LTSlinux-azure6.8.0-1014.16UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-azure-5.19no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-azure-6.2no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-azure-6.5no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-azure-6.86.8.0-1014.16~22.04.1UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-azure-fdeno fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-azure-fde-5.19no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-azure-fde-6.2no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-gcpno fix listedUBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-gcp6.8.0-1014.16UBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-gcp6.8.0-1014.16USN-6999-1
Ubuntu:22.04:LTSlinux-gcp-5.19no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-gcp-6.2no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-gcp-6.5no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-gcp-6.86.8.0-1014.16~22.04.1UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-gkeno fix listedUBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-gke6.8.0-1010.13USN-6999-1
Ubuntu:24.04:LTSlinux-gke6.8.0-1010.13UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-gkeopno fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-hwe-5.19no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-hwe-6.2no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-hwe-6.5no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-hwe-6.86.8.0-45.45~22.04.1USN-7029-1
Ubuntu:22.04:LTSlinux-hwe-6.86.8.0-45.45~22.04.1UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-ibmno fix listedUBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-ibm6.8.0-1012.12USN-6999-1
Ubuntu:24.04:LTSlinux-ibm6.8.0-1012.12UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-ibm-6.86.8.0-1012.12~22.04.1UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-intel-iot-realtimeno fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-intel-iotgno fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-kvmno fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-lowlatencyno fix listedUBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-lowlatency6.8.0-44.44.1UBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-lowlatency6.8.0-44.44.1USN-6999-1
Ubuntu:22.04:LTSlinux-lowlatency-hwe-5.19no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.2no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.5no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.86.8.0-44.44.1~22.04.1UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.86.8.0-44.44.1~22.04.1USN-7008-1
Ubuntu:22.04:LTSlinux-nvidiano fix listedUBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-nvidia6.8.0-1013.14USN-7005-1
Ubuntu:24.04:LTSlinux-nvidia6.8.0-1013.14UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-nvidia-6.2no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-nvidia-6.5no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-nvidia-6.86.8.0-1013.14~22.04.1UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-nvidia-6.86.8.0-1013.14~22.04.1USN-7005-2
Ubuntu:24.04:LTSlinux-nvidia-lowlatency6.8.0-1013.14.1UBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-nvidia-lowlatency6.8.0-1013.14.1USN-7005-1
Ubuntu:22.04:LTSlinux-nvidia-tegrano fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-nvidia-tegra-igxno fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-oem-5.17no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-oem-6.0no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-oem-6.1no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-oem-6.5no fix listedUBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-oem-6.86.8.0-1012.12UBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-oem-6.86.8.0-1012.12USN-6999-1
Ubuntu:22.04:LTSlinux-oracleno fix listedUBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-oracle6.8.0-1012.12UBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-oracle6.8.0-1012.12USN-6999-1
Ubuntu:22.04:LTSlinux-oracle-6.5no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-oracle-6.86.8.0-1012.12~22.04.1UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-raspino fix listedUBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-raspi6.8.0-1011.12UBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-raspi6.8.0-1011.12USN-6999-2
Ubuntu:22.04:LTSlinux-realtimeno fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-riscvno fix listedUBUNTU-CVE-2024-37021
Ubuntu:24.04:LTSlinux-riscv6.8.0-44.44.1UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-riscv-5.19no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-riscv-6.5no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-riscv-6.86.8.0-44.44.1~22.04.1UBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-starfive-5.19no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-starfive-6.2no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-starfive-6.5no fix listedUBUNTU-CVE-2024-37021
Ubuntu:22.04:LTSlinux-xilinx-zynqmpno fix listedUBUNTU-CVE-2024-37021

Affected products (as reported)

VendorProductVersions
Linux Linux 654ba4cc0f3ed7c0f08bfb39f66059d8c42943ee – before 304f8032d601d4f9322ca841cd0b573bd1beb158654ba4cc0f3ed7c0f08bfb39f66059d8c42943ee – before 2da62a139a6221a345db4eb9f4f1c4b0937c89ad654ba4cc0f3ed7c0f08bfb39f66059d8c42943ee – before 62ac496a01c9337a11362cea427038ba621ca9eb654ba4cc0f3ed7c0f08bfb39f66059d8c42943ee – before 4d4d2d4346857bf778fafaa97d6f76bb1663e3c9
Linux Linux 4.4

References