Thread (2 messages) flat view 2 messages, 2 authors, 2026-08-05

Re: [PATCH] Input: mms114 - fix touch slot corruption in suspend

From: sashiko-bot@kernel.org
Date: 2026-08-05 03:59:36

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:

Pre-existing issues:
- [High] Active touchkeys are not released during suspend, potentially causing them to be stuck upon resume.
--
--- Patch [1]: [PATCH] Input: mms114 - fix touch slot corruption in suspend ---
commit 1d29053929170cae6a2ebfa311bed7d55133b74a
Author: Dmitry Torokhov [off-list ref]

Input: mms114 - fix touch slot corruption in suspend

This commit fixes a race condition during suspend by disabling the IRQ and
synchronizing with the interrupt handler before synthesizing touch release
events. It also ensures touch release events are only synthesized if the
input device is enabled, protecting the sequence with the input device mutex.
quoted hunk ↗ jump to hunk
diff --git a/drivers/input/touchscreen/mms114.c b/drivers/input/touchscreen/mms114.c
index 27911a9f4e9eb..734c37579f5a4 100644
--- a/drivers/input/touchscreen/mms114.c
+++ b/drivers/input/touchscreen/mms114.c
@@ -679,6 +679,13 @@ static int mms114_suspend(struct device *dev)
[ ... ]
+	mms114_stop(data);
+
 	/* Release all touch */
 	for (id = 0; id < MMS114_MAX_TOUCH; id++) {
 		input_mt_slot(input_dev, id);
 		input_mt_report_slot_inactive(input_dev);
 	}
 
 	input_mt_report_pointer_emulation(input_dev, true);
 	input_sync(input_dev);
[Severity: High]
This is a pre-existing issue, but does this sequence also need to synthesize
release events for active touchkeys?

If a touchkey (such as Back or Menu) is pressed when the device suspends,
mms114_stop() powers down the hardware without sending a hardware release
interrupt. Since this loop only releases multitouch slots, it seems the
touchkey could remain logically stuck in the active state in the input core
upon resume.

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/anKxGkyRRu5A92Q_@google.com?part=1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help