{
  "schema_version": "1.6.1",
  "id": "RPI-CVE-2026-72133",
  "modified": "2026-10-09T11:39:44Z",
  "upstream": [
    "CVE-2026-72133"
  ],
  "published": "2026-08-15T06:04:33Z",
  "summary": "spi: uniphier: Fix completion initialization order before devm_request_irq()",
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\nspi: uniphier: Fix completion initialization order before devm_request_irq()\n\nThe driver calls devm_request_irq() before initializing the completion\nused by the interrupt handler. Because the interrupt may occur immediately\nafter devm_request_irq(), the handler may execute before init_completion().\n\nThis may result in calling complete() on an uninitialized completion,\ncausing undefined behavior. This has been observed with KASAN.\n\nFix this by initializing the completion before registering the IRQ.",
  "severity": [
    {
      "type": "CVSS_V3",
      "score": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"
    }
  ],
  "affected": [
    {
      "package": {
        "ecosystem": "Raspberry Pi OS:12",
        "name": "linux"
      },
      "versions": [
        "1:6.1.47-1+rpt4"
      ],
      "ecosystem_specific": {
        "binaries": [
          {
            "binary_name": "linux-image-6.1.0-rpi3-rpi-2712",
            "binary_version": "1:6.1.47-1+rpt4"
          },
          {
            "binary_name": "linux-image-6.1.0-rpi3-rpi-v6",
            "binary_version": "1:6.1.47-1+rpt4"
          },
          {
            "binary_name": "linux-image-6.1.0-rpi3-rpi-v7",
            "binary_version": "1:6.1.47-1+rpt4"
          },
          {
            "binary_name": "linux-image-6.1.0-rpi3-rpi-v7l",
            "binary_version": "1:6.1.47-1+rpt4"
          },
          {
            "binary_name": "linux-image-6.1.0-rpi3-rpi-v8",
            "binary_version": "1:6.1.47-1+rpt4"
          }
        ]
      },
      "database_specific": {
        "per_version": {
          "1:6.1.47-1+rpt4": {
            "linux_commit": "655fc658a15ae7a6f37103754adb39ba52a9a14e",
            "upstream_version": "6.1.47",
            "assessment": "commit ancestry (strak rule)",
            "upstream_fixed": "6.1.178",
            "compiled_filter": false
          }
        }
      }
    }
  ],
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://www.cve.org/CVERecord?id=CVE-2026-72133"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/b9fcf0db433d79648ace74bc2b8b88f91e306304"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/82a5746c4c9e94f6f816ec7edea6ddc24417c6a5"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/f4bb0a91f7badd6d15ac8d783a1169d9e1e95c17"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/49f6705d80b5e6175d8435d9c72b66bd516a8e89"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/8b5798ce0007874c14611b8ee4ce6c749855260e"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/d44b828eb551bd59ba9f22457825cc3db3a39fc1"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/077a7bc1c32d3da9670c5e282ea3e5ac8a94be59"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/f3ad1c87d8201e54b66bd6072442f0b5d5a308ee"
    }
  ],
  "database_specific": {
    "source": "https://git.kernel.org/pub/scm/linux/security/vulns.git",
    "upstream_modified": "2026-08-17T05:50:24Z",
    "severity": {
      "source": "kernel CNA",
      "cvss_v3_score": 8.4,
      "cvss_v3_severity": "High",
      "scenario": "AV:L - The bug is in uniphier_spi_probe() on Socionext UniPhier embedded SoCs; uniphier_spi_handler() runs during platform driver initialization at boot/module load, not via network protocols, remote packets, or runtime SPI syscalls/ioctls.\nAC:L - Commit and reporter confirm the SPI controller IRQ may assert immediately after devm_request_irq(); stale or pending SSI status on warm reboot can invoke complete() on uninitialized xfer_done without attacker luck.\nPR:N - uniphier_spi_probe() has no credential or capability checks before devm_request_irq(); on affected UniPhier boards the vulnerable probe sequence runs automatically during kernel boot without the attacker holding Linux privileges.\nUI:N - No victim action is required; a pending SPI controller interrupt during driver probe at boot or reboot can trigger the uninitialized complete() path without opening /dev/spidev*, mounting filesystems, or other user operations.\nS:U - Impact is kernel panic from uninitialized completion/spinlock handling within the host kernel; this is not a VM escape, hypervisor bypass, IOMMU violation, or sandbox boundary crossing on embedded UniPhier systems.\nC:H - complete() takes an uninitialized wait.lock and swake_up_locked() walks a zeroed task_list, causing KASAN wild-memory-access and invalid kernel memory reads beyond a strictly bounded NULL fault.\nI:H - Calling complete() on an uninitialized completion corrupts spinlock/wait-queue metadata in uniphier_spi_priv; KASAN-reported undefined behavior in IRQ context can corrupt adjacent kzalloc slab data and enable further kernel control primitives.\nA:H - KASAN wild-memory-access and NULL list dereference in uniphier_spi_handler() during probe cause kernel oops/panic on affected UniPhier embedded devices, denying all system availability until reboot."
    }
  }
}
