<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Thu, 01 Oct 2026 13:55:13 +0000</lastBuildDate>
    <item>
      <title>CVE-2024-56568 — iommu/arm-smmu: Defer probe of clients after smmu device bound</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2024-56568</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Linux&lt;/p&gt;
&lt;p&gt;In the Linux kernel, the following vulnerability has been resolved:&lt;/p&gt;
&lt;p&gt;iommu/arm-smmu: Defer probe of clients after smmu device bound&lt;/p&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;Following is how the race occurs:&lt;/p&gt;
&lt;p&gt;T1:Smmu device probe		T2: Client device probe&lt;/p&gt;
&lt;p&gt;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-&amp;gt;streamid_mask */
driver_bound()
	klist_add_tail()&lt;/p&gt;
&lt;p&gt;When this null smmu pointer is dereferenced later in
arm_smmu_probe_device, the device crashes.&lt;/p&gt;
&lt;p&gt;Fix this by deferring the probe of the client device
until the smmu device has bound to the arm smmu driver.&lt;/p&gt;
&lt;p&gt;[will: Add comment]&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Linux&lt;/p&gt;
&lt;p&gt;In the Linux kernel, the following vulnerability has been resolved:&lt;/p&gt;
&lt;p&gt;iommu/arm-smmu: Defer probe of clients after smmu device bound&lt;/p&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;Following is how the race occurs:&lt;/p&gt;
&lt;p&gt;T1:Smmu device probe		T2: Client device probe&lt;/p&gt;
&lt;p&gt;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-&amp;gt;streamid_mask */
driver_bound()
	klist_add_tail()&lt;/p&gt;
&lt;p&gt;When this null smmu pointer is dereferenced later in
arm_smmu_probe_device, the device crashes.&lt;/p&gt;
&lt;p&gt;Fix this by deferring the probe of the client device
until the smmu device has bound to the arm smmu driver.&lt;/p&gt;
&lt;p&gt;[will: Add comment]&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2024-56568</guid>
    </item>
  </channel>
</rss>
