Opened 3 months ago
Last modified 3 months ago
#19151 new bug
TrackPoint input breaks touchpad on Thinkpad X300
Reported by: | alterae | Owned by: | nobody |
---|---|---|---|
Priority: | low | Milestone: | Unscheduled |
Component: | Drivers/Input/PS2 | Version: | R1/beta5 |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
While running the R1/beta5 64-bit installer (from the haiku-r1beta5-x86_64-anyboot.iso
installer image) from a USB stick on a Lenovo Thinkpad X300, any input to the TrackPoint causes the touchpad and built-in mouse buttons to stop functioning entirely until the system is rebooted.
Additionally, input to the TrackPoint causes the touchpad (labeled as PS/2 Touchpad 1
to disappear entirely from the Input preferences application. The TrackPoint itself does not appear in the Input preferences application.
If the TrackPoint never receives any input, the touchpad works fine, as do the touchpad mouse buttons and the TrackPoint mouse buttons.
Keyboard input is unaffected. I have not tested an external USB or bluetooth mouse. I have not tested if the issue occurs when Haiku is booted from the Thinkpad's internal storage.
System Information
From AboutSystem
Version: hrev57937+113
R1/beta5 (x86_64)
Kernel:
September 12, 2024 at 9:59:37 PM
Attachments (1)
Change History (6)
follow-up: 2 comment:1 by , 3 months ago
by , 3 months ago
comment:2 by , 3 months ago
Replying to korli:
Please provide a syslog, thanks (see https://dev.haiku-os.org/wiki/ReportingBugs#Syslog )
Syslog is attached; sorry for missing that initially. Hope it's adequate.
follow-up: 4 comment:3 by , 3 months ago
Thanks. I only see this message:
Mouse (touchpad) device exiting, Operation would block
It's a bit unexpected, because B_WOULD_BLOCK would mean the passed timeout is zero or less: https://cgit.haiku-os.org/haiku/tree/src/add-ons/input_server/devices/mouse/MouseInputDevice.cpp#n429
comment:4 by , 3 months ago
Replying to korli:
It's a bit unexpected, because B_WOULD_BLOCK would mean the passed timeout is zero or less: https://cgit.haiku-os.org/haiku/tree/src/add-ons/input_server/devices/mouse/MouseInputDevice.cpp#n429
That is weird, indeed. I have effectively zero familiarity with the codebase, but it looks like touchpadEventTimeout
should be B_INFINITE_TIMEOUT
. The only thing I can think of is the bit at MouseInputDevice.cpp:448 where it gets set to -1
if read.event
is MS_READ
. If that's the case, it looks like that MS_READ
value might be coming from ps2_alps.cpp:191, which does appear to have something to do with TrackPoint input, but again I am not familiar enough with this code to say anything for certain.
I am quite curious about the cause, now! It looks like the code is getting confused about whether it's handling touchpad or mouse input, and I'd love to know if I'm right or if it's something else.
comment:5 by , 3 months ago
Component: | - General → Drivers/Input/PS2 |
---|---|
Platform: | x86-64 → All |
Please provide a syslog, thanks (see https://dev.haiku-os.org/wiki/ReportingBugs#Syslog )