CVE-2026-90227: nvme/ioctl: check SUBMIT_IO with nvme_cmd_allowed()
In the Linux kernel, the following vulnerability has been resolved:
nvme/ioctl: check SUBMITIO with nvmecmdallowed()
Unlike IOCMD / IO64CMD, NVMEIOCTLSUBMITIO never calls nvmecmdallowed(). Unprivileged callers can thus issue I/O on a partition device or write through a read-only file descriptor.
Pass flags and openforwrite through and reject disallowed commands with -EACCES.
Affected Software
Event History
Frequently Asked Questions
What level of access does an attacker need?
An attacker does not need elevated privileges. The issue is reachable by unprivileged callers able to use NVME_IOCTL_SUBMIT_IO against an NVMe device.
What unauthorized operations are possible?
An unprivileged caller can issue I/O to a partition device and can perform writes even when the file descriptor was opened read-only.
How does the fix prevent exploitation?
The fix applies nvme_cmd_allowed() checks to NVME_IOCTL_SUBMIT_IO, passing the command flags and whether the device was opened for writing. Commands that are not permitted are rejected with -EACCES.