{
  "schema_version": "1.6.1",
  "id": "RPI-CVE-2026-80553",
  "modified": "2026-10-09T11:39:44Z",
  "upstream": [
    "CVE-2026-80553"
  ],
  "published": "2026-08-26T14:37:59Z",
  "summary": "s390/vfio_ccw: Cancel existing workqueues",
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\ns390/vfio_ccw: Cancel existing workqueues\n\nThe initialization of the io_work and crw_work workqueues begs the\nquestion of whether they should be un-initialized. Add the corresponding\ncleanup tags in _release_dev to ensure work isn't dispatched after\nthe private struct is free'd.",
  "severity": [
    {
      "type": "CVSS_V3",
      "score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/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.185",
            "compiled_filter": false
          }
        }
      }
    }
  ],
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://www.cve.org/CVERecord?id=CVE-2026-80553"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/87d569cb35a541b31a184faf982540694d4c9a89"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/7492ca2d0c5d59add01e267be9f5a6eeb8076fd7"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/b94b28c1f0fae53b2f2d6180ae6442c9a1558f67"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/e868ea8be0bc88c6982f48ecf3259d98afd884ae"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/dc47a98abe6714577a25224534dbd356051097a3"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/b7ae0f7993867d009a4b554fc1d6d451c10580a0"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/77f5e888d2e607a0b3141fb95091ad6ef1cca9a2"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/79c60b2c61105368dcc8444eb45847e21734f7c4"
    }
  ],
  "database_specific": {
    "source": "https://git.kernel.org/pub/scm/linux/security/vulns.git",
    "upstream_modified": "2026-08-27T12:40:42Z",
    "severity": {
      "source": "kernel CNA",
      "cvss_v3_score": 8.8,
      "cvss_v3_severity": "High",
      "scenario": "AV:L - The bug is reached only through local VFIO mediated-device syscalls (read/write/ioctl on /dev/vfio/* and device fds) that start channel I/O or receive CRW events; vfio-ccw has no network, Bluetooth, or physical-bus packet entry point.\nAC:L - This is a close/teardown versus workqueue race where the VFIO client controls both sides: it can submit I/O that queues io_work/crw_work via interrupts or path events, then close or release the device while work is still pending, and retry to win reliably.\nPR:L - Exploitation requires access to an opened vfio-ccw mdev (typical QEMU/libvirt VM operator or delegated /dev/vfio holder on an IBM Z passthrough host), not init-namespace root; mdev creation is admin setup, but triggering the UAF needs only the delegated VFIO fd.\nUI:N - No separate victim action is required; once vfio-ccw passthrough is configured, the attacker issues channel I/O and coordinates device close/release (e.g., hot-unplug or fd teardown) without needing another user to mount media or click anything.\nS:C - On IBM Z/LinuxONE, vfio-ccw exists to pass DASD subchannels into KVM guests; guest-driven channel I/O causes host interrupt/workqueue activity and host-side teardown UAF corrupts hypervisor kernel memory outside the VM security boundary.\nC:H - vfio_ccw_sch_io_todo() and vfio_ccw_crw_todo() dereference freed vfio_ccw_private fields (io_mutex, cp, io_region, crw list, eventfd pointers); per kernel UAF guidance this enables attacker-influenced reuse and arbitrary kernel read primitives.\nI:H - The UAF handlers perform mutex operations, cp_free(), memcpy into io_region, and eventfd_signal() on freed memory, giving heap-sprayable arbitrary write and control-flow hijack potential beyond a simple crash.\nA:H - Use-after-free in deferred I/O/CRW work during device close or release can immediately oops or panic the host kernel from invalid mutex/structure access, and successful exploitation can hang or crash the system even when not leveraged for code execution."
    }
  }
}
