GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

CVE-2026-72149 (GCVE-0-2026-72149)

Vulnerability from cvelistv5 – Published: 2026-08-15 05:53 – Updated: 2026-08-17 05:40
VLAI
Title
dmaengine: tegra: Fix burst size calculation
Summary
In the Linux kernel, the following vulnerability has been resolved: dmaengine: tegra: Fix burst size calculation Currently, the Tegra GPC DMA hardware requires the transfer length to be a multiple of the max burst size configured for the channel. When a client requests a transfer where the length is not evenly divisible by the configured max burst size, the DMA hangs with partial burst at the end. Fix this by reducing the burst size to the largest power-of-2 value that evenly divides the transfer length. For example, a 40-byte transfer with a 16-byte max burst will now use an 8-byte burst (40 / 8 = 5 complete bursts) instead of causing a hang. This issue was observed with the PL011 UART driver where TX DMA transfers of arbitrary lengths were stuck.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: ee17028009d49fffed8cc963455d33b1fd3f1d08 , < 735951baa311c66353405dcac39375dd66441db0 (git)
Affected: ee17028009d49fffed8cc963455d33b1fd3f1d08 , < 8f0f5de1091119679d87f60dfb1acbff4b2a0ed3 (git)
Affected: ee17028009d49fffed8cc963455d33b1fd3f1d08 , < a3b76b54e06d73166af4d1a284a0e0711889060c (git)
Affected: ee17028009d49fffed8cc963455d33b1fd3f1d08 , < 7926c1e4be86379945fb5f168888ac4d2aaf6c91 (git)
Affected: ee17028009d49fffed8cc963455d33b1fd3f1d08 , < 6e37e9e230c7e848bd8e8cd4db15bb18bcf11ad1 (git)
Affected: ee17028009d49fffed8cc963455d33b1fd3f1d08 , < 4651df83b6c796daead3447e8fd874322918ee4f (git)
guessed Create a notification for this product.
Linux Linux Affected: 5.19
Unaffected: 0 , < 5.19 (semver)
Unaffected: 6.1.178 , ≤ 6.1.* (semver)
Unaffected: 6.6.145 , ≤ 6.6.* (semver)
Unaffected: 6.12.97 , ≤ 6.12.* (semver)
Unaffected: 6.18.40 , ≤ 6.18.* (semver)
Unaffected: 7.1.5 , ≤ 7.1.* (semver)
Unaffected: 7.2 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/dma/tegra186-gpc-dma.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "735951baa311c66353405dcac39375dd66441db0",
              "status": "affected",
              "version": "ee17028009d49fffed8cc963455d33b1fd3f1d08",
              "versionType": "git"
            },
            {
              "lessThan": "8f0f5de1091119679d87f60dfb1acbff4b2a0ed3",
              "status": "affected",
              "version": "ee17028009d49fffed8cc963455d33b1fd3f1d08",
              "versionType": "git"
            },
            {
              "lessThan": "a3b76b54e06d73166af4d1a284a0e0711889060c",
              "status": "affected",
              "version": "ee17028009d49fffed8cc963455d33b1fd3f1d08",
              "versionType": "git"
            },
            {
              "lessThan": "7926c1e4be86379945fb5f168888ac4d2aaf6c91",
              "status": "affected",
              "version": "ee17028009d49fffed8cc963455d33b1fd3f1d08",
              "versionType": "git"
            },
            {
              "lessThan": "6e37e9e230c7e848bd8e8cd4db15bb18bcf11ad1",
              "status": "affected",
              "version": "ee17028009d49fffed8cc963455d33b1fd3f1d08",
              "versionType": "git"
            },
            {
              "lessThan": "4651df83b6c796daead3447e8fd874322918ee4f",
              "status": "affected",
              "version": "ee17028009d49fffed8cc963455d33b1fd3f1d08",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/dma/tegra186-gpc-dma.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.19"
            },
            {
              "lessThan": "5.19",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.178",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.145",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.97",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.40",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.5",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.178",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.145",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.97",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.40",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.5",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndmaengine: tegra: Fix burst size calculation\n\nCurrently, the Tegra GPC DMA hardware requires the transfer length to\nbe a multiple of the max burst size configured for the channel. When a\nclient requests a transfer where the length is not evenly divisible by\nthe configured max burst size, the DMA hangs with partial burst at\nthe end.\n\nFix this by reducing the burst size to the largest power-of-2 value\nthat evenly divides the transfer length. For example, a 40-byte\ntransfer with a 16-byte max burst will now use an 8-byte burst\n(40 / 8 = 5 complete bursts) instead of causing a hang.\n\nThis issue was observed with the PL011 UART driver where TX DMA\ntransfers of arbitrary lengths were stuck."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.5,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:N - On Tegra embedded systems (Jetson gateways, automotive ECUs, industrial controllers), UART/I2C/SPI slaves using GPC DMA are routinely bridged to TCP/UDP or cellular backhaul; remote peers can deliver crafted-length byte streams that reach tegra_dma_prep_slave_sg() without local shell access.\nAC:L - The attacker controls transfer length (e.g., 40 bytes against a 16-byte burst); word-aligned mismatches are deterministic for many sizes and the bug was reproduced with arbitrary PL011 TX DMA lengths, requiring no race, timing window, or special memory layout.\nPR:N - Network-exposed serial/fieldbus gateways and modem UART paths routinely accept unauthenticated remote traffic forwarded into kernel DMA slave transfers; no local OS account, dialout membership, or root capability on the Tegra host is required.\nUI:N - Exploitation requires only attacker-supplied I/O of a chosen length through an exposed peripheral path; no victim must open a device, mount media, or perform any other action.\nS:U - The DMA engine hang and resulting peripheral denial occur entirely within the host kernel; no VM, hypervisor, or IOMMU security boundary is crossed.\nC:N - The flaw is a hardware DMA configuration hang with no out-of-bounds access, use-after-free, or information leak; the controller stalls on a partial burst without exposing kernel memory contents.\nI:N - No memory corruption or attacker-controlled writes occur; impact is limited to stalling DMA completion and hanging the affected channel/peripheral rather than modifying data or hijacking control flow.\nA:H - A mismatched burst leaves the GPC DMA channel permanently busy (tegra_dma_pause() times out, no EOC IRQ), wedging UART/I2C/SPI DMA paths and blocking driver completion until reboot\u2014a deadlock-style denial of service."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-17T05:40:59.373Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/735951baa311c66353405dcac39375dd66441db0"
        },
        {
          "url": "https://git.kernel.org/stable/c/8f0f5de1091119679d87f60dfb1acbff4b2a0ed3"
        },
        {
          "url": "https://git.kernel.org/stable/c/a3b76b54e06d73166af4d1a284a0e0711889060c"
        },
        {
          "url": "https://git.kernel.org/stable/c/7926c1e4be86379945fb5f168888ac4d2aaf6c91"
        },
        {
          "url": "https://git.kernel.org/stable/c/6e37e9e230c7e848bd8e8cd4db15bb18bcf11ad1"
        },
        {
          "url": "https://git.kernel.org/stable/c/4651df83b6c796daead3447e8fd874322918ee4f"
        }
      ],
      "title": "dmaengine: tegra: Fix burst size calculation",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-72149",
    "datePublished": "2026-08-15T05:53:20.695Z",
    "dateReserved": "2026-08-09T03:40:39.908Z",
    "dateUpdated": "2026-08-17T05:40:59.373Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-72149",
      "date": "2026-09-04",
      "epss": "0.00647",
      "percentile": "0.48652"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-72149\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-08-15T06:21:32.610\",\"lastModified\":\"2026-08-17T06:18:15.033\",\"vulnStatus\":\"Received\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ndmaengine: tegra: Fix burst size calculation\\n\\nCurrently, the Tegra GPC DMA hardware requires the transfer length to\\nbe a multiple of the max burst size configured for the channel. When a\\nclient requests a transfer where the length is not evenly divisible by\\nthe configured max burst size, the DMA hangs with partial burst at\\nthe end.\\n\\nFix this by reducing the burst size to the largest power-of-2 value\\nthat evenly divides the transfer length. For example, a 40-byte\\ntransfer with a 16-byte max burst will now use an 8-byte burst\\n(40 / 8 = 5 complete bursts) instead of causing a hang.\\n\\nThis issue was observed with the PL011 UART driver where TX DMA\\ntransfers of arbitrary lengths were stuck.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/dma/tegra186-gpc-dma.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"ee17028009d49fffed8cc963455d33b1fd3f1d08\",\"lessThan\":\"735951baa311c66353405dcac39375dd66441db0\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"ee17028009d49fffed8cc963455d33b1fd3f1d08\",\"lessThan\":\"8f0f5de1091119679d87f60dfb1acbff4b2a0ed3\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"ee17028009d49fffed8cc963455d33b1fd3f1d08\",\"lessThan\":\"a3b76b54e06d73166af4d1a284a0e0711889060c\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"ee17028009d49fffed8cc963455d33b1fd3f1d08\",\"lessThan\":\"7926c1e4be86379945fb5f168888ac4d2aaf6c91\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"ee17028009d49fffed8cc963455d33b1fd3f1d08\",\"lessThan\":\"6e37e9e230c7e848bd8e8cd4db15bb18bcf11ad1\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"ee17028009d49fffed8cc963455d33b1fd3f1d08\",\"lessThan\":\"4651df83b6c796daead3447e8fd874322918ee4f\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/dma/tegra186-gpc-dma.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"5.19\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"5.19\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1.178\",\"lessThanOrEqual\":\"6.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.145\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.12.97\",\"lessThanOrEqual\":\"6.12.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.40\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.1.5\",\"lessThanOrEqual\":\"7.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.2\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H\",\"baseScore\":7.5,\"baseSeverity\":\"HIGH\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":3.9,\"impactScore\":3.6}]},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/4651df83b6c796daead3447e8fd874322918ee4f\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/6e37e9e230c7e848bd8e8cd4db15bb18bcf11ad1\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/735951baa311c66353405dcac39375dd66441db0\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/7926c1e4be86379945fb5f168888ac4d2aaf6c91\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/8f0f5de1091119679d87f60dfb1acbff4b2a0ed3\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a3b76b54e06d73166af4d1a284a0e0711889060c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "Low",
      "current_release_date": "2026-08-19T05:25:46+00:00",
      "cve": "CVE-2026-72149",
      "id": "CVE-2026-72149",
      "initial_release_date": "2026-08-15T00:00:00+00:00",
      "product_status:known_affected": "184",
      "product_status:known_not_affected": "90",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: dmaengine: tegra: Fix burst size calculation",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-72149.json",
      "version": "3"
    }
  }
}



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…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…