KernelScan.io

HIGH Introduced in 5.8

vfio_ccw CrwList Race

CVE-2026-80547

CVSS 8.8 / 10.0 NVD

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H

KernelScan AI6.9MEDIUM

01

In the Linux kernel, the following vulnerability has been resolved: s390/vfio_ccw: Implement a crw lock Unlike the channel_program struct, which covers synchronous I/O submissions and asynchronous interrupts, the CRW region relies exclusively on asynchronous events coming from hardware. Implement a lock to manage the list of those payloads, to ensure they are read cohesively.

02

Engine v0.6.0

Risk summary

A race condition in the s390 vfio-ccw driver allows concurrent access to the CRW (Channel Report Word) list without proper synchronization. This can lead to list corruption or use-after-free when hardware events and userspace reads occur simultaneously, potentially causing a kernel crash or denial of service.

Affecteddrivers/s390/cio/vfio_ccw_chp.c (s390 vfio-ccw)

Vulnerability analysis

The vfio-ccw driver maintains a list of Channel Report Word (CRW) entries that are populated by asynchronous hardware events and consumed by userspace reads. Without a dedicated lock, the list can be modified concurrently by the hardware event path and the userspace read path, leading to list corruption or use-after-free of CRW entries. The fix introduces a spinlock that serializes all access to the CRW list, ensuring entries are added, removed, and freed cohesively. This vulnerability is reachable on s390 systems with vfio-ccw configured, requiring a user with access to the mediated vfio-ccw device and hardware generating channel report events.

03

BranchIntroducedFixed inPatch commit
6.15.86.1.1850edd222730a9
mainline5.87.216b0798024c0
6.125.86.12.10549fa26b0df00
6.185.86.18.467902be374cbf
6.65.86.6.154a3d60ae24183
7.15.87.1.10c76c4ee72bfc
5.155.85.15.2183c94d4179bcc
cip/6.15.86.1.187-cip600edd222730a9
cip/6.125.86.12.108-cip3149fa26b0df00