[gpm] GPM problems

Troy Schultz tschultz@canada.com
04 Apr 2002 09:49:39 -0500


Thank you for your response.  Here is some more information;

>> My system is a Compaq Presario 2710 with a synaptics touchpad+4-way
>> scroll key, firmware version 5.8.  I am running RedHat 7.2 with
kernel
>> 2.4.17, ACPI version 20020225, and Xfree86 Version 4.2.0.

>Could you write what capacities the touchpad is detected as having.
>(Need
>option -D)

Here is the results of "gpm -Rimps2 -t synps2 -m /dev/mouse";

*** debug ***: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(2422)]: 
Initializing Synaptics PS/2 TouchPad
info: [/usr/src/gpm-1.20.0-patched/src/gpn.c(363)]: 
Started gpm successfully. Entered daemon mode.
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1613)]: 
     Firmware version 5.8

info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param edge_motion_enabled set to False
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param edge_motion_speed_enabled set to False
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param corner_taps_enabled set to False
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param tap_gesture_enabled set to True
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param pressure_speed_enabled set to True
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param tossing_enabled set to False
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param does_toss_use_static_speed set to True
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param low_pressure set to 10
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param speed_up_pressure set to 30
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1555)]: 
Param pressure_factor set to 0.100
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1555)]: 
Param standard_speed_factor set to 0.100
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param min_toss_time set to 100
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param max_toss_time set to 300
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param prevent_toss_time set to 300
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param min_toss_dist set to 2
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param static_toss_speed set to 70
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1555)]: 
Param toss_speed_factor set to 0.500
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param edge_speed set to 20
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1585)]: 
Param upper_left_action set to 0
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1585)]: 
Param upper_right_action set to 2
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1585)]: 
Param lower_left_action set to 0
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1585)]: 
Param lower_right_action set to 3
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param wmode_enabled set to True
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param drag_lock_enabled set to False
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param finger_threshold set to 10
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param tap_lower_limit set to 5
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param tap_upper_limit set to 200
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param tap_range set to 100
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param tap_interval set to 200
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param pads_tap_interval set to 8
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param multiple_tap_delay set to 30
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param palm_detect_enabled set to True
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param palm_detect_level set to 12
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param multi_finger_tap_enable set to True
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param multi_finger_stop_enabled set to True
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param multi_finger_stop_delay set to 8
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param touch_pad_enabled set to True
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param stick_enabled set to True
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param scrolling_enabled set to True
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param scrolling_edge set to 2
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1571)]: 
Param auto_scrolling_enabled set to True
info: [*** debug ***: [/usr/src/gpm-1.20.0-patched/src/gpm.c(880)]: 
Screen size: 80 - 25
*** debug ***: [/usr/src/gpm-1.20.0-patched/src/gpm.c(897)]: 
x 10, y 20
*** debug ***: [/usr/src/gpm-1.20.0-patched/src/gpm.c(903)]: 
Removing files /var/run/gpm.pid and /dev/gpmctl
/usr/src/gpm-1.20.0-patched/src/synaptics.c(1543)]: 
Param scrolling_speed set to 2
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1637)]: 
Synaptics Ident:  model_code=1   Firmware version 5.8
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1639)]: 
Synaptics model:
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1640)]: 
   rot180:      No
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1641)]: 
   portrait:    No
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1642)]: 
   sensor:      29
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1643)]: 
                Reserved
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1644)]: 
                
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1645)]: 
                0x0 res/mm
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1647)]: 
                 0.0x 0.0 mm
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1649)]: 
                0x0 res
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1650)]: 
   hardware:    72
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1651)]: 
   newABS:      Yes
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1652)]: 
   simpleCmd:   Yes
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1653)]: 
   geometry:    1
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1654)]: 
   extended:    Yes
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1655)]: 
   sleep:       Yes
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1656)]: 
   4 buttons:   No
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1657)]: 
   multifinger: Yes
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1658)]: 
   palmdetect:  Yes
info: [/usr/src/gpm-1.20.0-patched/src/synaptics.c(1662)]: 

Min Toss Dist^2: 0



>> I start gpm using the following;
>> "daemon gpm -Rimps2 -t synps2 -m /dev/mouse"

>What happens if you only use the touchpad as a ps2 device (you need to
>reboot).

How should I do this?  My notebook does not yield a /dev/ps2 device,
only /dev/psaux and /dev/mouse (which is symlink to psaux).

>> The problems I experience are as follows;
>> #1: access console using <CTRL><ALT><F1> and return to X using
>> <CTRL><ALT><F7> no response from X for either mouse or keybaord. 
This
>> happens 100% of the time with gpm 1.20.0 and only happened once with
gpm
>> 1.19.6.  After this I must restart the system.  During this
>> /var/log/messages do not report anything out of the ordinary.

>I dont know what can causes this (my guess is the kernel keybd.c, or
>the
>daemon state). Can you do any SysRq? What happens if you start gpm with
>-D. (What happens if you do an additional startx?)

X seems to hang, it does not completely redraw screen after return from
console.  If I ssh into notebook and run top, X show 99.7% CPU
utilization.  I have tried to change to init level 3, but that seems to
do nothing, I can however "shutdown -r now" and restart the system.

This leaves me in a delima if this happens when I have no other system
from which I can ssh.  I then have no choice but to power-off the
notebook, something I prefer not to do without first shutting things
down properly.


>> #2: after X screen saver is running and returns to normal X display,
>> loose mouse and sometime keyboard.  This happens approx. 20% of the
>> time.  After this if I ssh to the notebook and restart gpm things
work
>> again.  During this problem /var/log/messages reports "gpm[PID]:
garbage
>> or tossing PS/2 data"
>> > #3: sometimes during normal running, usually related with a window
>> close, I also experience mouse and keyboard loss as in problem #2.
Same
>> results and fix as #2 also.

>This is very probably because the touchpad is reset (after poweroff to
>save battery). Gpm does not detect when a device sends reset code. The
>garbage data is then ps2 protocol data. I dont understand why keyboard
>is
>effected though. Could you compile gpm with debug info, and next time
>it
>happens attach gdb to see where/what gpm is doing.