CVE-2026-43220 (GCVE-0-2026-43220)

Vulnerability from cvelistv5 – Published: 2026-05-06 11:28 – Updated: 2026-05-17 15:21
VLAI
Title
iommu/amd: serialize sequence allocation under concurrent TLB invalidations
Summary
In the Linux kernel, the following vulnerability has been resolved: iommu/amd: serialize sequence allocation under concurrent TLB invalidations With concurrent TLB invalidations, completion wait randomly gets timed out because cmd_sem_val was incremented outside the IOMMU spinlock, allowing CMD_COMPL_WAIT commands to be queued out of sequence and breaking the ordering assumption in wait_on_sem(). Move the cmd_sem_val increment under iommu->lock so completion sequence allocation is serialized with command queuing. And remove the unnecessary return.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: f2f65b28d802a667119147444ec2ae33eebf9a58 , < d51bf43193b1e95dc4e34e540dc76e19def2ae5a (git)
Affected: 715c263119fd1b918a9fcbd8a36ea5b604a46324 , < fca7aa0264ae99e5ff287d0ced5af0b82b121c4f (git)
Affected: e15768e68820142077bbca402d8e902f64ade1b0 , < 5000ce7fcb31067566a1a1a2e5b5bbff93625242 (git)
Affected: 496269d12072ecb219826485bdbec70c92a8eef5 , < 48caa7542a795c9679ec1bd1bc2592e05a7369a4 (git)
Affected: d2a0cac10597068567d336e85fa3cbdbe8ca62bf , < 9e249c48412828e807afddc21527eb734dc9bd3d (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.6.128 , < 6.6.140 (semver)
Affected: 6.12.75 , < 6.12.88 (semver)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/iommu/amd/amd_iommu_types.h",
            "drivers/iommu/amd/init.c",
            "drivers/iommu/amd/iommu.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "d51bf43193b1e95dc4e34e540dc76e19def2ae5a",
              "status": "affected",
              "version": "f2f65b28d802a667119147444ec2ae33eebf9a58",
              "versionType": "git"
            },
            {
              "lessThan": "fca7aa0264ae99e5ff287d0ced5af0b82b121c4f",
              "status": "affected",
              "version": "715c263119fd1b918a9fcbd8a36ea5b604a46324",
              "versionType": "git"
            },
            {
              "lessThan": "5000ce7fcb31067566a1a1a2e5b5bbff93625242",
              "status": "affected",
              "version": "e15768e68820142077bbca402d8e902f64ade1b0",
              "versionType": "git"
            },
            {
              "lessThan": "48caa7542a795c9679ec1bd1bc2592e05a7369a4",
              "status": "affected",
              "version": "496269d12072ecb219826485bdbec70c92a8eef5",
              "versionType": "git"
            },
            {
              "lessThan": "9e249c48412828e807afddc21527eb734dc9bd3d",
              "status": "affected",
              "version": "d2a0cac10597068567d336e85fa3cbdbe8ca62bf",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/iommu/amd/amd_iommu_types.h",
            "drivers/iommu/amd/init.c",
            "drivers/iommu/amd/iommu.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "6.6.140",
              "status": "affected",
              "version": "6.6.128",
              "versionType": "semver"
            },
            {
              "lessThan": "6.12.88",
              "status": "affected",
              "version": "6.12.75",
              "versionType": "semver"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.140",
                  "versionStartIncluding": "6.6.128",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.88",
                  "versionStartIncluding": "6.12.75",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\niommu/amd: serialize sequence allocation under concurrent TLB invalidations\n\nWith concurrent TLB invalidations, completion wait randomly gets timed out\nbecause cmd_sem_val was incremented outside the IOMMU spinlock, allowing\nCMD_COMPL_WAIT commands to be queued out of sequence and breaking the\nordering assumption in wait_on_sem().\nMove the cmd_sem_val increment under iommu-\u003elock so completion sequence\nallocation is serialized with command queuing.\nAnd remove the unnecessary return."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-05-17T15:21:38.711Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/d51bf43193b1e95dc4e34e540dc76e19def2ae5a"
        },
        {
          "url": "https://git.kernel.org/stable/c/fca7aa0264ae99e5ff287d0ced5af0b82b121c4f"
        },
        {
          "url": "https://git.kernel.org/stable/c/5000ce7fcb31067566a1a1a2e5b5bbff93625242"
        },
        {
          "url": "https://git.kernel.org/stable/c/48caa7542a795c9679ec1bd1bc2592e05a7369a4"
        },
        {
          "url": "https://git.kernel.org/stable/c/9e249c48412828e807afddc21527eb734dc9bd3d"
        }
      ],
      "title": "iommu/amd: serialize sequence allocation under concurrent TLB invalidations",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-43220",
    "datePublished": "2026-05-06T11:28:20.905Z",
    "dateReserved": "2026-05-01T14:12:55.994Z",
    "dateUpdated": "2026-05-17T15:21:38.711Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-43220",
      "date": "2026-09-30",
      "epss": "0.00162",
      "percentile": "0.04697"
    },
    "microsoft_vex": {
      "current_release_date": "2026-06-23T14:46:17.000Z",
      "cve": "CVE-2026-43220",
      "id": "msrc_CVE-2026-43220",
      "initial_release_date": "2026-05-02T00:00:00.000Z",
      "product_status:fixed": "1",
      "product_status:known_affected": "3",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "iommu/amd: serialize sequence allocation under concurrent TLB invalidations",
      "url": "https://msrc.microsoft.com/csaf/vex/2026/msrc_cve-2026-43220.json",
      "version": "4"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/iommu/amd/amd_iommu_types.h",
                  "drivers/iommu/amd/init.c",
                  "drivers/iommu/amd/iommu.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "d51bf43193b1e95dc4e34e540dc76e19def2ae5a",
                    "status": "affected",
                    "version": "f2f65b28d802a667119147444ec2ae33eebf9a58",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "fca7aa0264ae99e5ff287d0ced5af0b82b121c4f",
                    "status": "affected",
                    "version": "715c263119fd1b918a9fcbd8a36ea5b604a46324",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "5000ce7fcb31067566a1a1a2e5b5bbff93625242",
                    "status": "affected",
                    "version": "e15768e68820142077bbca402d8e902f64ade1b0",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "48caa7542a795c9679ec1bd1bc2592e05a7369a4",
                    "status": "affected",
                    "version": "496269d12072ecb219826485bdbec70c92a8eef5",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "9e249c48412828e807afddc21527eb734dc9bd3d",
                    "status": "affected",
                    "version": "d2a0cac10597068567d336e85fa3cbdbe8ca62bf",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/iommu/amd/amd_iommu_types.h",
                  "drivers/iommu/amd/init.c",
                  "drivers/iommu/amd/iommu.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "6.6.140",
                    "status": "affected",
                    "version": "6.6.128",
                    "versionType": "semver"
                  },
                  {
                    "lessThan": "6.12.88",
                    "status": "affected",
                    "version": "6.12.75",
                    "versionType": "semver"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "configurations": [
          {
            "nodes": [
              {
                "cpeMatch": [
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "B503BA3C-31FA-4897-85F6-EECE0EE4668F",
                    "versionEndExcluding": "6.7",
                    "versionStartIncluding": "6.6.128",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "72DA13D5-CC16-4529-9803-274233ABE12C",
                    "versionEndExcluding": "6.13",
                    "versionStartIncluding": "6.12.75",
                    "vulnerable": true
                  }
                ],
                "negate": false,
                "operator": "OR"
              }
            ]
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\niommu/amd: serialize sequence allocation under concurrent TLB invalidations\n\nWith concurrent TLB invalidations, completion wait randomly gets timed out\nbecause cmd_sem_val was incremented outside the IOMMU spinlock, allowing\nCMD_COMPL_WAIT commands to be queued out of sequence and breaking the\nordering assumption in wait_on_sem().\nMove the cmd_sem_val increment under iommu-\u003elock so completion sequence\nallocation is serialized with command queuing.\nAnd remove the unnecessary return."
          }
        ],
        "id": "CVE-2026-43220",
        "lastModified": "2026-06-17T10:49:10.677",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "HIGH",
                "baseScore": 5.5,
                "baseSeverity": "MEDIUM",
                "confidentialityImpact": "NONE",
                "integrityImpact": "NONE",
                "privilegesRequired": "LOW",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 3.6,
              "source": "nvd@nist.gov",
              "type": "Primary"
            }
          ]
        },
        "published": "2026-05-06T12:16:41.660",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/48caa7542a795c9679ec1bd1bc2592e05a7369a4"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/5000ce7fcb31067566a1a1a2e5b5bbff93625242"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/9e249c48412828e807afddc21527eb734dc9bd3d"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/d51bf43193b1e95dc4e34e540dc76e19def2ae5a"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/fca7aa0264ae99e5ff287d0ced5af0b82b121c4f"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Modified",
        "weaknesses": [
          {
            "description": [
              {
                "lang": "en",
                "value": "NVD-CWE-noinfo"
              }
            ],
            "source": "nvd@nist.gov",
            "type": "Primary"
          }
        ]
      }
    },
    "redhat_vex": {
      "aggregate_severity": "None",
      "current_release_date": "2026-06-28T11:40:01+00:00",
      "cve": "CVE-2026-43220",
      "id": "CVE-2026-43220",
      "initial_release_date": "2026-05-06T00:00:00+00:00",
      "product_status:known_not_affected": "274",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: iommu/amd: serialize sequence allocation under concurrent TLB invalidations",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-43220.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-08-31T17:07:45Z",
      "cve": "CVE-2026-43220",
      "id": "CVE-2026-43220",
      "initial_release_date": "2026-05-09T02:40:46Z",
      "product_status:first_fixed": "2",
      "product_status:known_affected": "394",
      "product_status:known_not_affected": "324",
      "product_status:recommended": "250",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-43220",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-43220.json",
      "version": "7"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…