On 6/26/26 7:15 PM, Dmitry Torokhov wrote:
On Fri, Jun 26, 2026 at 07:09:08PM -0700, Barry K. Nathan wrote:
On 6/26/26 5:31 PM, Dmitry Torokhov wrote:
On Fri, Jun 26, 2026 at 03:23:12PM -0700, Barry K. Nathan wrote:
On 6/26/26 2:17 PM, Dmitry Torokhov wrote:
On Fri, Jun 26, 2026 at 01:41:38PM -0700, Barry K. Nathan wrote:
On 6/26/26 12:56 PM, Dmitry Torokhov wrote: > Hi Barry, > > On Fri, Jun 26, 2026 at 10:56:21AM -0700, Barry K. Nathan wrote: >> (cc Dmitry Torokhov because this is related to two of your commits) >> >> On 6/25/26 6:03 AM, Greg Kroah-Hartman wrote: >>> This is the start of the stable review cycle for the 7.1.2 release. >>> There are 21 patches in this series, all will be posted as a response >>> to this one. If anyone has any issues with these being applied, please >>> let me know. >>> >>> Responses should be made by Sat, 27 Jun 2026 12:54:50 +0000. >>> Anything received after that time might be too late. >>> >>> The whole patch series can be found in one patch at: >>> https://www.kernel.org/pub/linux/kernel/v7.x/stable-review/patch-7.1.2-rc1.g... >>> or in the git tree and branch at: >>> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-7.1.y >>> and the diffstat can be found below. >>> >>> thanks, >>> >>> greg k-h >>> >> Unfortunately, 7.1.2-rc1 breaks the Synaptics touchpad on my Lenovo >> ThinkPad T14 Gen 1 -- the pointer no longer moves when I touch the >> touchpad. Potentially relevant line from dmesg: >> >> rmi4_f01 rmi4-00.fn01: found RMI device, manufacturer: Synaptics, product: TM3471-020, fw id: 3972349 >> >>> Dmitry Torokhovdmitry.torokhov@gmail.com >>> Input: rmi4 - refactor register descriptor parsing >>> >>> Dmitry Torokhovdmitry.torokhov@gmail.com >>> Input: rmi4 - fix register descriptor address calculation >>>> Both of these patches seem bad in my testing. Either one, individually, >> causes the pointer to no longer move when I touch the touchpad. If I >> revert both of them, then my touchpad works again. >> >> I have not yet tested 7.0.14-rc1 or 6.18.37-rc1. However, the problem >> also reproduces on current mainline as of this writing (commit >> 51cb1aa1250c36269474b8b6ca6b6319e170f5a5). > Could you please try applying this debug patch and send me dmesg? Sure, I applied the patch on top of mainline, and the dmesg output is below.
Thank you! So I messed up and "Input: rmi4 - fix register descriptor address calculation" is totally wrong.
Can you please revert it (keeping the debug patch) and try booting again and if the touchpad still does not work post the dmesg again.
Thanks!
I did the revert, while keeping the debug patch. With this kernel, the touchpad still doesn't work for me, so here's the new dmesg.
Thank you. It looks like the firmware is a bit sloppy and the new tightened checks are tripping on it. Please try this patch:
Input: rmi4 - tolerate short register descriptor structure
From: Dmitry Torokhov dmitry.torokhov@gmail.com
Some touchpads (e.g. ThinkPad T14 Gen 1) have buggy firmware that reports a register descriptor structure size that is too small for the number of registers it claims to have in the presence map. The remaining bytes in the structure are 0, which with the new strict bounds checking causes the parser to fail with -EIO, aborting the device probe.
Tolerate such short reads by dropping the remaining (unparseable or 0-size) registers from the list instead of failing the probe, preventing the driver from trying to use them.
Fixes: 0adb483fbf2d ("Input: rmi4 - refactor register descriptor parsing") Reported-by: Barry K. Nathan barryn@pobox.com Cc: stable@vger.kernel.org Assisted-by: Antigravity:gemini-3.5-flash Signed-off-by: Dmitry Torokhov dmitry.torokhov@gmail.com
Yes, this worked! To be clear, what I did (and what I'm successfully running now) is:
- Start with mainline as of commit 51cb1aa1250c36269474b8b6ca6b6319e170f5a5
- Then revert a98518e72439fd42cbfe641c2896543cb088e3d1 ("Input: rmi4 - fix register descriptor address calculation")
- Then apply the new patch ("Input: rmi4 - tolerate short register descriptor structure")
If there's anything else I need to test or anything else you want me to try, please let me know. Thank you!
No, this is it. I will apply this to my tree and send it on to Linus.
Thanks.
That will take care of mainline, but there's still the issue of the upcoming stable kernel releases (6.18.37, 7.0.14, 7.1.2).
For brevity in the rest of this email, I'll refer to these patches as patch A/B/C:
Patch A: "Input: rmi4 - fix register descriptor address calculation" Patch B: "Input: rmi4 - refactor register descriptor parsing" Patch C: "Input: rmi4 - tolerate short register descriptor structure"
Perhaps the best way forward for the current stable cycle is to drop patches A and B from the stable-queue for now, to make sure these releases don't break any touchpads.
Once patch C lands in mainline, that will fix patch B. So, in a future stable release cycle, patch B could be added back to the stable-queue alongside patch C.