Skip to content
OpenAdvisories
Unscored CVE-2024-26943 EUVD-2024-24205GHSA-m2jr-hqxr-7x3f

nouveau/dmem: handle kcalloc() allocation failure

Published May 1, 2024 · Updated May 11, 2026 · Assigned by Linux

Vendor: Linux Product: Linux Package: linux Package: linux Package: linux-allwinner-5.19 Package: linux-aws Package: linux-aws-5.0 Package: linux-aws-5.11 Package: linux-aws-5.13 Package: linux-aws-5.19 Package: linux-aws-5.3 Package: linux-aws-5.8 Package: linux-aws-6.2 Package: linux-aws-6.5 Package: linux-azure Package: linux-azure-5.11 Package: linux-azure-5.13 Package: linux-azure-5.19 Package: linux-azure-5.3 Package: linux-azure-5.8 Package: linux-azure-6.2 Package: linux-azure-6.5 Package: linux-azure-edge Package: linux-azure-fde Package: linux-azure-fde-5.19 Package: linux-azure-fde-6.2 Package: linux-gcp Package: linux-gcp-5.11 Package: linux-gcp-5.13 Package: linux-gcp-5.19 Package: linux-gcp-5.3 Package: linux-gcp-5.8 Package: linux-gcp-6.2 Package: linux-gcp-6.5 Package: linux-gke Package: linux-gke-4.15 Package: linux-gke-5.15 Package: linux-gke-5.4 Package: linux-gkeop-5.4 Package: linux-hwe Package: linux-hwe-5.11 Package: linux-hwe-5.13 Package: linux-hwe-5.19 Package: linux-hwe-5.8 Package: linux-hwe-6.2 Package: linux-hwe-6.5 Package: linux-hwe-edge Package: linux-ibm Package: linux-intel-5.13 Package: linux-intel-iot-realtime Package: linux-lowlatency Package: linux-lowlatency-hwe-5.19 Package: linux-lowlatency-hwe-6.2 Package: linux-lowlatency-hwe-6.5 Package: linux-nvidia-6.2 Package: linux-nvidia-6.5 Package: linux-oem Package: linux-oem-5.10 Package: linux-oem-5.13 Package: linux-oem-5.14 Package: linux-oem-5.17 Package: linux-oem-5.6 Package: linux-oem-6.0 Package: linux-oem-6.1 Package: linux-oem-6.5 Package: linux-oem-6.8 Package: linux-oracle Package: linux-oracle-5.0 Package: linux-oracle-5.11 Package: linux-oracle-5.13 Package: linux-oracle-5.3 Package: linux-oracle-5.8 Package: linux-oracle-6.5 Package: linux-raspi Package: linux-raspi-realtime Package: linux-raspi2 Package: linux-realtime Package: linux-riscv Package: linux-riscv-5.11 Package: linux-riscv-5.19 Package: linux-riscv-5.8 Package: linux-riscv-6.5 Package: linux-starfive-5.19 Package: linux-starfive-6.2 Package: linux-starfive-6.5 Platform: Linux Ecosystem: Debian Ecosystem: Ubuntu

Description

In the Linux kernel, the following vulnerability has been resolved:

nouveau/dmem: handle kcalloc() allocation failure

The kcalloc() in nouveau_dmem_evict_chunk() will return null if
the physical memory has run out. As a result, if we dereference
src_pfns, dst_pfns or dma_addrs, the null pointer dereference bugs
will happen.

Moreover, the GPU is going away. If the kcalloc() fails, we could not
evict all pages mapping a chunk. So this patch adds a __GFP_NOFAIL
flag in kcalloc().

Finally, as there is no need to have physically contiguous memory,
this patch switches kcalloc() to kvcalloc() in order to avoid
failing allocations.

Affected products

VendorProductAffectedFixed
Linux Linux 6.1 6.1.84

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 linux 6.7.12-1 —
Debian 13 linux 6.7.12-1 —
Debian 12 linux 6.1.85-1 —
ReleasePackageFixed inAdvisory
Ubuntu 24.04 LTS linux 6.8.0-35.35 USN-6816-1
Ubuntu 24.04 LTS linux-aws 6.8.0-1009.9 USN-6817-1
Ubuntu 24.04 LTS linux-azure 6.8.0-1008.8 USN-6817-3
Ubuntu 24.04 LTS linux-gcp 6.8.0-1008.9 USN-6817-1
Ubuntu 24.04 LTS linux-gke 6.8.0-1004.7 USN-6817-3
Ubuntu 24.04 LTS linux-ibm +2 6.8.0-1006.6 USN-6878-1, USN-6817-2, USN-6816-1
Ubuntu 24.04 LTS linux-raspi 6.8.0-1005.5 USN-6816-1
Ubuntu 24.04 LTS linux-riscv +1 6.8.0-35.35.1 USN-6816-1
Ubuntu 22.04 LTS linux-riscv +32 No fix yet —
Ubuntu 20.04 LTS linux-gke +26 No fix yet —
Ubuntu 18.04 LTS linux-gcp +13 No fix yet —
Ubuntu 16.04 LTS linux-hwe-edge No fix yet —
Show 1 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro Realtime 24.04 LTS linux-raspi-realtime 6.8.0-2004.4 —
Ubuntu Pro Realtime 24.04 LTS linux-realtime 6.8.1-1002.2 —
ReleasePackageFixed inAdvisory
SLES 15 SP6 kernel-64kb +3 6.4.0-150600.23.7.3 SUSE-SU-2024:4318-1, SUSE-SU-2024:2203-1
SLES 15 SP6 kernel-azure +1 6.4.0-150600.8.5.4 SUSE-SU-2024:3984-1, SUSE-SU-2024:2135-1
SLES 15 SP6 kernel-coco +3 6.4.0-15061.9.coco15sp6.1 SUSE-SU-2024:4387-1
SLES 15 SP6 kernel-default-base 6.4.0-150600.23.7.3.150600.12.2.7 SUSE-SU-2024:4318-1, SUSE-SU-2024:2203-1
SLES 15 SP6 kernel-docs 6.4.0-150600.23.7.4 SUSE-SU-2024:4318-1, SUSE-SU-2024:2203-1
SLES 15 SP6 kernel-source 6.4.0-150600.23.7.2 SUSE-SU-2024:4318-1, SUSE-SU-2024:2203-1
SLES 15 SP6 kernel-syms 6.4.0-150600.23.7.1 SUSE-SU-2024:4318-1, SUSE-SU-2024:2203-1
SLES 15 SP6 kernel-syms-azure 6.4.0-150600.8.5.1 SUSE-SU-2024:3984-1, SUSE-SU-2024:2135-1
SLES 15 SP5 kernel-64kb +6 5.14.21-150500.55.68.1 SUSE-SU-2025:0577-2, SUSE-SU-2025:0577-1, SUSE-SU-2024:2190-1
SLES 15 SP5 kernel-azure +2 5.14.21-150500.33.57.1 SUSE-SU-2024:2019-1
SLES 15 SP5 kernel-default-base 5.14.21-150500.55.68.1.150500.6.31.1 SUSE-SU-2025:0577-2, SUSE-SU-2025:0577-1, SUSE-SU-2024:2190-1
Show 9 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLES for SAP 15 SP5 kernel-default-base 5.14.21-150500.55.94.1.150500.6.43.1 SUSE-SU-2025:0577-2, SUSE-SU-2025:0577-1
SLES for SAP 15 SP5 kernel-docs +4 5.14.21-150500.55.94.1 SUSE-SU-2025:0577-2, SUSE-SU-2025:0577-1
SLE Micro 6.1 kernel-default-base 6.4.0-24.1.21.4 SUSE-SU-2025:20247-1
SLE Micro 6.1 kernel-livepatch-MICRO-6-0-RT_Update_4 +1 1-1.1 SUSE-SU-2025:20249-1, SUSE-SU-2025:20246-1
SLE Micro 6.1 kernel-livepatch-MICRO-6-0_Update_4 1-1.2 SUSE-SU-2025:20247-1
SLE Micro 6.1 kernel-rt +1 6.4.0-22.1 SUSE-SU-2025:20249-1, SUSE-SU-2025:20246-1
SLE Micro 6.1 kernel-source +2 6.4.0-24.1 SUSE-SU-2025:20247-1
SLE Micro 6.0 kernel-default-base 6.4.0-17.1.1.51 SUSE-SU-2025:20164-1, SUSE-SU-2025:20008-1
SLE Micro 6.0 kernel-livepatch-MICRO-6-0-RT_Update_4 +1 1-1.1 SUSE-SU-2025:20166-1, SUSE-SU-2025:20163-1
SLE Micro 6.0 kernel-livepatch-MICRO-6-0_Update_4 1-1.2 SUSE-SU-2025:20164-1
SLE Micro 6.0 kernel-rt +1 6.4.0-9.1 SUSE-SU-2025:20166-1, SUSE-SU-2025:20163-1, SUSE-SU-2025:20028-1
SLE Micro 6.0 kernel-source +2 6.4.0-18.1 SUSE-SU-2025:20164-1, SUSE-SU-2025:20008-1
SLE Micro 5.5 kernel-default 5.14.21-150500.55.68.1 SUSE-SU-2025:0577-2, SUSE-SU-2025:0577-1, SUSE-SU-2024:2190-1
SLE Micro 5.5 kernel-default-base 5.14.21-150500.55.68.1.150500.6.31.1 SUSE-SU-2025:0577-2, SUSE-SU-2025:0577-1, SUSE-SU-2024:2190-1
SLE Micro 5.5 kernel-rt +1 5.14.21-150500.13.58.1 SUSE-SU-2025:0556-1, SUSE-SU-2024:2008-1
SLE Micro 5.5 kernel-source 5.14.21-150500.55.94.1 SUSE-SU-2025:0577-2, SUSE-SU-2025:0577-1
SLE Live Patching 15 SP6 kernel-default 6.4.0-150600.23.7.3 SUSE-SU-2024:4318-1, SUSE-SU-2024:2203-1
SLE Live Patching 15 SP6 kernel-livepatch-SLE15-SP6-RT_Update_1 1-150600.1.5.1 SUSE-SU-2024:2973-1
SLE Live Patching 15 SP6 kernel-livepatch-SLE15-SP6-RT_Update_5 1-150600.1.3.1 SUSE-SU-2024:3986-1
SLE Live Patching 15 SP6 kernel-livepatch-SLE15-SP6_Update_1 1-150600.13.3.7 SUSE-SU-2024:2203-1
SLE Live Patching 15 SP6 kernel-livepatch-SLE15-SP6_Update_6 1-150600.13.3.5 SUSE-SU-2024:4318-1
SLE Live Patching 15 SP5 kernel-default 5.14.21-150500.55.68.1 SUSE-SU-2025:0577-1, SUSE-SU-2024:2190-1
SLE Live Patching 15 SP5 kernel-livepatch-SLE15-SP5_Update_15 +2 1-150500.11.3.1 SUSE-SU-2025:0577-1, SUSE-SU-2024:2190-1, SUSE-SU-2024:2008-1
SLE HPC 15 SP5 kernel-64kb +5 5.14.21-150500.55.94.1 SUSE-SU-2025:0577-2, SUSE-SU-2025:0577-1
SLE HPC 15 SP5 kernel-default-base 5.14.21-150500.55.94.1.150500.6.43.1 SUSE-SU-2025:0577-2, SUSE-SU-2025:0577-1
SUSE Real Time Module 15 SP6 kernel-rt +3 6.4.0-150600.10.5.1 SUSE-SU-2024:3986-1, SUSE-SU-2024:2973-1
SUSE Real Time Module 15 SP5 kernel-rt +3 5.14.21-150500.13.58.1 SUSE-SU-2024:2008-1
ReleasePackageFixed inAdvisory
openSUSE Leap 15.6 dtb-aarch64 +2 6.4.0-150600.23.7.1 SUSE-SU-2024:4318-1, SUSE-SU-2024:2203-1
openSUSE Leap 15.6 kernel-64kb +5 6.4.0-150600.23.7.3 SUSE-SU-2024:4318-1, SUSE-SU-2024:2203-1
openSUSE Leap 15.6 kernel-azure +1 6.4.0-150600.8.5.4 SUSE-SU-2024:3984-1, SUSE-SU-2024:2135-1
openSUSE Leap 15.6 kernel-default-base 6.4.0-150600.23.7.3.150600.12.2.7 SUSE-SU-2024:4318-1, SUSE-SU-2024:2203-1
openSUSE Leap 15.6 kernel-docs 6.4.0-150600.23.7.4 SUSE-SU-2024:4318-1, SUSE-SU-2024:2203-1
openSUSE Leap 15.6 kernel-rt +3 6.4.0-150600.10.5.1 SUSE-SU-2024:3986-1, SUSE-SU-2024:2973-1
openSUSE Leap 15.6 kernel-source 6.4.0-150600.23.7.2 SUSE-SU-2024:4318-1, SUSE-SU-2024:2203-1
openSUSE Leap 15.6 kernel-syms-azure 6.4.0-150600.8.5.1 SUSE-SU-2024:3984-1, SUSE-SU-2024:2135-1
openSUSE Leap 15.5 dtb-aarch64 +10 5.14.21-150500.55.68.1 SUSE-SU-2024:2190-1
openSUSE Leap 15.5 kernel-azure +2 5.14.21-150500.33.57.1 SUSE-SU-2024:2019-1
openSUSE Leap 15.5 kernel-default-base 5.14.21-150500.55.68.1.150500.6.31.1 SUSE-SU-2024:2190-1
openSUSE Leap 15.5 kernel-rt +3 5.14.21-150500.13.58.1 SUSE-SU-2024:2008-1

Advisories 27

References