Linux Input/HID development
 help / color / mirror / Atom feed
From: Aldo Ariel Panzardo <qwe.aldo@gmail.com>
To: jikos@kernel.org, bentiss@kernel.org
Cc: dmitry.torokhov@gmail.com, linux-input@vger.kernel.org,
	linux-kernel@vger.kernel.org, stable@vger.kernel.org,
	Aldo Ariel Panzardo <qwe.aldo@gmail.com>
Subject: [PATCH v11 0/2] HID: multitouch: fix haptic lifetime on delayed input release
Date: Sat, 17 Oct 2026 13:41:37 -0300	[thread overview]
Message-ID: <20261017164139.1791033-1-qwe.aldo@gmail.com> (raw)

v10 review found that the multitouch slot setup ran before validating
the haptic class and selecting the input that owns FF. This could set
INPUT_MT_TOTAL_FORCE on an input without haptics. If no multitouch
touchpad input was found, haptic mode could remain enabled.

Patch 2 now validates the class and attaches FF before setting up MT
slots. It selects the input where multitouch touchpad pressure was
mapped with gram or newton units, so an earlier multitouch report
without haptic pressure cannot take the sole FF instance. Only that
input gets pointer emulation, total force and haptic pressure
accounting. Haptic mode is disabled if no input receives FF. Patch 1
is unchanged from v10.

Tested on x86_64 with W=1. The HID multitouch module compiled, and
QEMU/KVM with KASAN completed 10 virtual UHID haptic cycles and 10
multi-input cycles with a non-multitouch report before the multitouch
report. The tests checked FF_HAPTIC, effect upload and playback, HID
removal with an open evdev fd, and final release. Two negative fixtures
had gram pressure but either no haptic reports or no touchpad report.
With two contacts, v10 summed ABS_PRESSURE to 30 in both cases; v11
reported the oldest contact's pressure of 10. A split-report fixture
placed a multitouch report without pressure before the pressure-bearing
one; FF, INPUT_PROP_POINTER and ABS_PRESSURE were on the latter input.
No KASAN report was emitted. Physical hardware was not tested.

Base: 58161ead29e50d70a317ea26b472e0c7508e69da
v9: https://lore.kernel.org/linux-input/20261017140332.1480375-1-qwe.aldo@gmail.com/

Aldo Ariel Panzardo (2):
  HID: haptic: make FF creation the last fallible init step
  HID: multitouch: give FF core ownership of haptic state

 drivers/hid/hid-haptic.c     | 161 +++++++++++++++++------------------
 drivers/hid/hid-haptic.h     |   6 +-
 drivers/hid/hid-multitouch.c |  59 ++++++++++---
 3 files changed, 125 insertions(+), 101 deletions(-)

-- 
2.53.0


             reply	other threads:[~2026-10-17 16:41 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-17 16:41 Aldo Ariel Panzardo [this message]
2026-10-17 16:41 ` [PATCH v11 1/2] HID: haptic: make FF creation the last fallible init step Aldo Ariel Panzardo
2026-10-17 16:41 ` [PATCH v11 2/2] HID: multitouch: give FF core ownership of haptic state Aldo Ariel Panzardo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20261017164139.1791033-1-qwe.aldo@gmail.com \
    --to=qwe.aldo@gmail.com \
    --cc=bentiss@kernel.org \
    --cc=dmitry.torokhov@gmail.com \
    --cc=jikos@kernel.org \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox