KernelScan.io

HIGH Introduced in 4.9

rmi4 F54 Diagnostics Overflow

CVE-2026-80568

CVSS 7.8 / 10.0 NVD

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

KernelScan AI7.7HIGH

01

In the Linux kernel, the following vulnerability has been resolved: Input: synaptics-rmi4 - block s_input when F54 queue is busy Changing the input (diagnostic report type) mid-stream changes the report size. Since V4L2 buffers are allocated based on the size at stream start, changing the input while streaming could lead to a heap buffer overflow if the new size is larger than the allocated buffers. Prevent this by blocking VIDIOC_S_INPUT with -EBUSY if the V4L2 queue is busy (streaming).

02

Engine v0.6.0

Risk summary

A local user with access to a Synaptics RMI4 touch device's V4L2 interface can trigger a heap buffer overflow by changing the diagnostic input type while streaming. This can lead to kernel memory corruption, potentially allowing privilege escalation or a system crash. The vulnerability requires specific hardware and access to the device node.

Affecteddrivers/input/rmi4/rmi_f54.c (RMI4 F54 diagnostics)

Vulnerability analysis

The Synaptics RMI4 F54 diagnostics driver exposes a V4L2 interface that allows changing the diagnostic report type while streaming is active. Because V4L2 buffers are allocated based on the report size at stream start, switching to a larger report type mid-stream causes the driver to write beyond the allocated buffer, resulting in a heap overflow. The fix blocks the input change operation with an error if the V4L2 queue is busy, preventing the size mismatch. This vulnerability can be triggered locally by a user with access to the V4L2 device node, typically on a system with a compatible RMI4 touch device.

03

BranchIntroducedFixed inPatch commit
6.14.96.1.184493ba8e79472
6.64.96.6.1531d718f146176
5.154.95.15.217fa69f93015be
mainline4.97.2fbfd76746adc
6.184.96.18.46ff0849705d29
5.104.95.10.2667e994a9ecc0b
6.124.96.12.105cae79513f911
7.14.97.1.10ddd9a53faf3b
cip/4.194.94.19.325-cip13692d34cf591e1
cip/4.19-rt4.94.19.325-cip136-rt5092d34cf591e1
cip/5.104.95.10.268-cip777e994a9ecc0b
cip/5.10-rt4.95.10.268-cip77-rt347e994a9ecc0b
cip/6.14.96.1.187-cip60493ba8e79472
cip/6.124.96.12.108-cip31cae79513f911