CVE-2022-50307

s390/cio: fix out-of-bounds access on cio_ignore free

published September 15, 2025

CVSS
—
EPSS
0%
Percentile
4.9
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

s390/cio: fix out-of-bounds access on cio_ignore free

The channel-subsystem-driver scans for newly available devices whenever

device-IDs are removed from the cio_ignore list using a command such as:

echo free >/proc/cio_ignore

Since an I/O device scan might interfer with running I/Os, commit

172da89ed0ea ("s390/cio: avoid excessive path-verification requests")

introduced an optimization to exclude online devices from the scan.

The newly added check for online devices incorrectly assumes that

an I/O-subchannel's drvdata points to a struct io_subchannel_private.

For devices that are bound to a non-default I/O subchannel driver, such

as the vfio_ccw driver, this results in an out-of-bounds read access

during each scan.

Fix this by changing the scan logic to rely on a driver-independent

online indication. For this we can use struct subchannel->config.ena,

which is the driver's requested subchannel-enabled state. Since I/Os

can only be started on enabled subchannels, this matches the intent

of the original optimization of not scanning devices where I/O might

be running.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00161 · 4.9th percentile
Published
2025-09-15T14:46Z
EPSS history
Timeline
  • 15 SEP 14:46Z
    s390/cio: fix out-of-bounds access on cio_ignore free
    cvelistv5