]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
Input: mms114 - fix multi-touch slot corruption
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Sat, 4 Jul 2026 06:01:12 +0000 (23:01 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Sat, 11 Jul 2026 04:37:51 +0000 (21:37 -0700)
commitadea84ee6cdea611146c4251d3c1616f5a09feca
tree0490fdd052d99d6bc7bd75ac0d24672f03940c4c
parent536394ec81419b67d9f4f0028812c4372397be1b
Input: mms114 - fix multi-touch slot corruption

If the touchscreen controller reports a touch ID of 0, the driver
calculates the slot ID as touch->id - 1, which underflows to UINT_MAX.
This is passed to input_mt_slot() as -1.

Since the input core ignores negative slot values, the active slot remains
unchanged. The driver then reports the touch coordinates for the previously
active slot, corrupting its state.

Fix this by rejecting touch reports with ID 0.

Fixes: 07b8481d4aff ("Input: add MELFAS mms114 touchscreen driver")
Cc: stable@vger.kernel.org
Reported-by: sashiko-bot@kernel.org
Assisted-by: Antigravity:gemini-3.5-flash
Link: https://patch.msgid.link/20260704060115.353049-1-dmitry.torokhov@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/touchscreen/mms114.c