CWE
476 362
Advisory Published
Updated

CVE-2024-56568: iommu/arm-smmu: Defer probe of clients after smmu device bound

First published: Fri Dec 27 2024(Updated: )

In the Linux kernel, the following vulnerability has been resolved: iommu/arm-smmu: Defer probe of clients after smmu device bound Null pointer dereference occurs due to a race between smmu driver probe and client driver probe, when of_dma_configure() for client is called after the iommu_device_register() for smmu driver probe has executed but before the driver_bound() for smmu driver has been called. Following is how the race occurs: T1:Smmu device probe T2: Client device probe really_probe() arm_smmu_device_probe() iommu_device_register() really_probe() platform_dma_configure() of_dma_configure() of_dma_configure_id() of_iommu_configure() iommu_probe_device() iommu_init_device() arm_smmu_probe_device() arm_smmu_get_by_fwnode() driver_find_device_by_fwnode() driver_find_device() next_device() klist_next() /* null ptr assigned to smmu */ /* null ptr dereference while smmu->streamid_mask */ driver_bound() klist_add_tail() When this null smmu pointer is dereferenced later in arm_smmu_probe_device, the device crashes. Fix this by deferring the probe of the client device until the smmu device has bound to the arm smmu driver. [will: Add comment]

Credit: 416baaa9-dc9f-4396-8d5f-8c081fb06d67

Affected SoftwareAffected VersionHow to fix
Linux Kernel
Linux Kernel>=4.9<5.10.231
Linux Kernel>=5.11<5.15.174
Linux Kernel>=5.16<6.1.120
Linux Kernel>=6.2<6.6.66
Linux Kernel>=6.7<6.12.4
debian/linux<=5.10.223-1
5.10.234-1
6.1.129-1
6.1.128-1
6.12.21-1
debian/linux-6.1
6.1.129-1~deb11u1

Never miss a vulnerability like this again

Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.

Frequently Asked Questions

  • What is the severity of CVE-2024-56568?

    CVE-2024-56568 has a high severity due to its potential for causing null pointer dereference leading to system instability.

  • Which Linux kernel versions are affected by CVE-2024-56568?

    CVE-2024-56568 affects Linux kernel versions between 4.9 and 5.10.231, 5.11 and 5.15.174, 5.16 and 6.1.120, 6.2 and 6.6.66, as well as 6.7 and 6.12.4.

  • How do I fix CVE-2024-56568?

    To fix CVE-2024-56568, update your Linux kernel to a version that is not affected, ensuring you choose a version above 6.12.4.

  • What causes CVE-2024-56568?

    CVE-2024-56568 is caused by a race condition between the SMMU driver probe and client driver probe, leading to a null pointer dereference.

  • Is there a workaround for CVE-2024-56568?

    Currently, there are no recommended workarounds for CVE-2024-56568 other than updating to a safe kernel version.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2025 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203