---
id: CVE-2026-43220
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_…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= f2f65b28d802a667119147444ec2ae33eebf9a58 <
    d51bf43193b1e95dc4e34e540dc76e19def2ae5a
  - >-
    Linux >= 715c263119fd1b918a9fcbd8a36ea5b604a46324 <
    fca7aa0264ae99e5ff287d0ced5af0b82b121c4f
  - >-
    Linux >= e15768e68820142077bbca402d8e902f64ade1b0 <
    5000ce7fcb31067566a1a1a2e5b5bbff93625242
  - >-
    Linux >= 496269d12072ecb219826485bdbec70c92a8eef5 <
    48caa7542a795c9679ec1bd1bc2592e05a7369a4
  - >-
    Linux >= d2a0cac10597068567d336e85fa3cbdbe8ca62bf <
    9e249c48412828e807afddc21527eb734dc9bd3d
  - Linux 69d9339c02eddfc2a345be7220651068a3684383
  - Linux >= 6.1.191 < 6.2
  - Linux >= 6.6.128 < 6.6.140
  - Linux >= 6.12.75 < 6.12.88
published: '2026-05-06'
updated: '2026-10-30'
sourceUpdated: '2026-10-30T12:25:12.344Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-43220'
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'
tags:
  - cve.org
epss: 0.00127
epssPercentile: 0.0243
ingestedAt: '2026-11-05T15:02:32.277Z'
---

## Overview

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.

## Affected

- `Linux >= f2f65b28d802a667119147444ec2ae33eebf9a58 < d51bf43193b1e95dc4e34e540dc76e19def2ae5a`
- `Linux >= 715c263119fd1b918a9fcbd8a36ea5b604a46324 < fca7aa0264ae99e5ff287d0ced5af0b82b121c4f`
- `Linux >= e15768e68820142077bbca402d8e902f64ade1b0 < 5000ce7fcb31067566a1a1a2e5b5bbff93625242`
- `Linux >= 496269d12072ecb219826485bdbec70c92a8eef5 < 48caa7542a795c9679ec1bd1bc2592e05a7369a4`
- `Linux >= d2a0cac10597068567d336e85fa3cbdbe8ca62bf < 9e249c48412828e807afddc21527eb734dc9bd3d`
- `Linux 69d9339c02eddfc2a345be7220651068a3684383`
- `Linux >= 6.1.191 < 6.2`
- `Linux >= 6.6.128 < 6.6.140`
- `Linux >= 6.12.75 < 6.12.88`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
