You are not logged in.

#1 2006-04-02 18:51:48

mario
Member
Registered: 2006-04-02
Posts: 10

G7 mouse picked up as a keyboard bringing the PC down

[note: edited the topic name (again) to make the problem clearer. This way someone might find this more easily]

I'm editing this post with the latest stuff.
In short, it seems my mouse is sometimes detected as a keyboard, because of the USB receiver, that may eventually serve as a wireless keyboard receiver. When it is detected as a keyboard (I'm attaching the relevant part of the log, the error finally showed once in it) the server crashes.
I don't know if there are other reasons for X and/or the kernel failing, by now this is all I've got.
I've made a pair of pics to the screen after hard locks, I may post them later.

I have a Logitech G7 mouse which I would like to use with Arch. The only problem is that the evdev device driver only lets X start once in 5 times - when it won't, the whole kernel will have a segfault and I'll have to give an hard-reboot to the machine. This is true with every kernel I tried - 2.6.15, 2.6.15-archck, 2.6.16.1 (I just updated it with pacman). If I comment my G7 mouse line out, X starts every time, but if I leave it active, it may start - or not. When X does start, the mouse is absolutely perfect - mind you, it's not a configuration problem, the mouse is perfectly configured for the new xorg7 evdev driver.
It's working ATM but normally it does not. It's like a russian roulette.
This happens the same way wheter I put my custom udev rule node "/dev/input/G7" or the plain "/dev/input/mouse#" as a device in my xorg.conf.
Disabling the other mouse does not help, nor unplugging my wacom tablet before turning on the PC does.

If you need me to post anything, please ask. This is my xorg.conf:

Section "ServerLayout"
  Identifier    "Server Layout"
  Screen    "Screen0"
  InputDevice    "Logitech G7"    "CorePointer"
  InputDevice   "PS2 Mouse"    "SendCoreEvents"
  InputDevice    "PS2 Keyboard"    "CoreKeyboard"
#  InputDevice    "cursor"    "SendCoreEvents"
#  InputDevice    "stylus"    "SendCoreEvents"
#  InputDevice    "eraser"    "SendCoreEvents"
  Option    "StandbyTime"    "10"
  Option    "SuspendTime"    "20"
  Option    "OffTime"    "30"
EndSection

Section "dri"
# Access to OpenGL ICD is allowed for all users:
# Access to OpenGL ICD is restricted to a specific user group:
  Group        100    # users
  Mode        0666
EndSection

Section "Module"
  Load        "dbe"      # Double buffer extension
 SubSection "extmod"
  Option    "omit xfree86-dga"   # don't initialise the DGA extension
 EndSubSection
  Load        "type1"
  Load        "freetype"
  Load        "glx"    # libglx.a
  Load        "dri"    # libdri.a
EndSection

#Section "Extensions"
#  Option "Composite" "Enable"
#EndSection

Section "Files"
# The module search path.  The default path is shown here.
#    ModulePath    "/usr/X11R6/lib/modules"
  FontPath    "/usr/local/share/fonts"
  RgbPath    "/usr/share/X11/rgb"
  ModulePath    "/usr/lib/xorg/modules"
  FontPath    "/usr/share/fonts/75dpi"
  FontPath    "/usr/share/fonts/75dpi:unscaled"
  FontPath    "/usr/share/fonts/100dpi"
  FontPath    "/usr/share/fonts/100dpi:unscaled"
  FontPath    "/usr/share/fonts/TTF"
  FontPath    "/usr/share/fonts/Type1"
  FontPath    "/usr/share/fonts/cyrillic"
  FontPath    "/usr/share/fonts/misc"
  FontPath    "/usr/share/fonts/misc:unscaled"
  FontPath    "/usr/share/fonts/Type1"
  FontPath    "/usr/local/share/fonts"
  FontPath    "/opt/java/jre/lib/fonts"
EndSection

Section "InputDevice"
  Identifier    "Logitech G7"
  Driver    "evdev"
  Option    "Device"    "/dev/input/G7"
EndSection

Section "InputDevice"
  Identifier    "PS2 Mouse"
  Driver    "mouse"
  Option    "Protocol"    "ImPS/2"
  Option    "Device"    "/dev/input/mouse0"
  Option    "ZAxisMapping"    "4 5"
  Option    "Buttons"    "5"
EndSection

Section "InputDevice"
  Identifier    "PS2 Keyboard"
  Driver    "kbd"
  Option    "AutoRepeat"    "500 30"
  Option    "XkbRules"    "xorg"
  Option    "XkbModel"    "itouch"
  Option    "XkbLayout"    "it"
EndSection

Section "InputDevice"
  Driver    "wacom"
  Identifier    "cursor"
  Option    "Device"    "/dev/input/event3"
  Option    "Name"        "GRAPHIRE / INTUOS (USB)"
  Option    "Type"          "cursor"
  Option    "USB"        "on"
  Option    "Vendor"    "WACOM"
  Option    "Threshold"     "30"
EndSection

Section "InputDevice"
  Driver    "wacom"
  Identifier    "stylus"
  Option    "Device"    "/dev/input/event3"
  Option    "Name"        "GRAPHIRE / INTUOS Stylus (USB)"
  Option    "Type"        "stylus"
  Option    "USB"        "on"
  Option    "Vendor"    "WACOM"
  Option    "Threshold"    "10"
EndSection

Section "InputDevice"
  Driver    "wacom"
  Identifier    "eraser"
  Option    "Device"        "/dev/input/event3"
  Option    "Name"        "GRAPHIRE / INTUOS Stylus (USB)" 
  Option    "Type"          "eraser"
  Option    "USB"           "on"
  Option    "Vendor"    "WACOM"
  Option    "Threshold"    "25"
EndSection

Section "Monitor"
  Identifier    "Nec FE700"
  DisplaySize    325 243
  HorizSync    31.0-70
  VertRefresh    55-120
  Option    "DPMS"
EndSection

Section "Device"
  Identifier                "ATI Graphics Adapter"
  Driver                "fglrx"
  BusID                "PCI:1:0:0"
  Screen 0
EndSection

Section "Screen"
  Identifier    "Screen0"
  Device    "ATI Graphics Adapter"
  Monitor    "Nec FE700"
  DefaultDepth    24
  Subsection    "Display"
  Depth        24
  ViewPort    0 0            # initial origin if mode is smaller than desktop
  Modes        "1152x864" "1024x768" "800x600" #"1280x960"
 EndSubsection
EndSection
(**) Option "CorePointer"
(**) Logitech G7: Core Pointer
(**) Logitech G7: Device: "/dev/input/G7"
(II) Logitech G7: Found keys
(II) Logitech G7: Configuring as keyboard
(WW) Logitech G7: does not have core pointer capabilities
(**) Option "Protocol" "ImPS/2"
(**) PS2 Mouse: Device: "/dev/input/mouse0"
(**) PS2 Mouse: Protocol: "ImPS/2"
(**) Option "SendCoreEvents"
(**) PS2 Mouse: always reports core events
(**) Option "Device" "/dev/input/mouse0"
(**) Option "Buttons" "5"
(==) PS2 Mouse: Emulate3Buttons, Emulate3Timeout: 50
(**) Option "ZAxisMapping" "4 5"
(**) PS2 Mouse: ZAxisMapping: buttons 4 and 5
(**) PS2 Mouse: Buttons: 9
(**) Option "CoreKeyboard"
(**) PS2 Keyboard: Core Keyboard
(**) Option "Protocol" "standard"
(**) PS2 Keyboard: Protocol: standard
(**) Option "AutoRepeat" "500 30"
(**) Option "XkbRules" "xorg"
(**) PS2 Keyboard: XkbRules: "xorg"
(**) Option "XkbModel" "itouch"
(**) PS2 Keyboard: XkbModel: "itouch"
(**) Option "XkbLayout" "it"
(**) PS2 Keyboard: XkbLayout: "it"
(**) Option "CustomKeycodes" "off"
(**) PS2 Keyboard: CustomKeycodes disabled
(II) XINPUT: Adding extended input device "PS2 Keyboard" (type: KEYBOARD)
(II) XINPUT: Adding extended input device "PS2 Mouse" (type: MOUSE)
(II) XINPUT: Adding extended input device "Logitech G7" (type: KEYBOARD)
(II) PS2 Mouse: ps2EnableDataReporting: succeeded

   *** If unresolved symbols were reported above, they might not
   *** be the reason for the server aborting.

Backtrace:
0: X(xf86SigHandler+0x88) [0x80ba6a8]
1: [0xffffe420]
2: X(Dispatch+0x1a9) [0x80894e9]
3: X(main+0x476) [0x806fdd6]
4: /lib/tls/libc.so.6(__libc_start_main+0xd0) [0xb7ceae00]
5: X(FontFileCompleteXLFD+0x91) [0x806f341]

Fatal server error:
Caught signal 4.  Server aborting

Offline

#2 2006-04-04 10:31:56

mario
Member
Registered: 2006-04-02
Posts: 10

Re: G7 mouse picked up as a keyboard bringing the PC down

This time it worked, and this is the log:

(**) Option "CorePointer"
(**) Logitech G7: Core Pointer
(**) Logitech G7: Device: "/dev/input/G7"
(II) Logitech G7: Found x and y relative axes
(II) Logitech G7: Found mouse buttons
(II) Logitech G7: Configuring as mouse
(**) Option "Protocol" "ImPS/2"
(**) PS2 Mouse: Device: "/dev/input/mouse0"
(**) PS2 Mouse: Protocol: "ImPS/2"
(**) Option "CorePointer" "False"
(**) Option "Device" "/dev/input/mouse0"
(**) Option "Buttons" "5"
(==) PS2 Mouse: Emulate3Buttons, Emulate3Timeout: 50
(**) Option "ZAxisMapping" "4 5"
(**) PS2 Mouse: ZAxisMapping: buttons 4 and 5
(**) PS2 Mouse: Buttons: 9
(**) Option "CoreKeyboard"
(**) PS2 Keyboard: Core Keyboard
(**) Option "Protocol" "standard"
(**) PS2 Keyboard: Protocol: standard
(**) Option "AutoRepeat" "500 30"
(**) Option "XkbRules" "xorg"
(**) PS2 Keyboard: XkbRules: "xorg"
(**) Option "XkbModel" "itouch"
(**) PS2 Keyboard: XkbModel: "itouch"
(**) Option "XkbLayout" "it"
(**) PS2 Keyboard: XkbLayout: "it"
(**) Option "CustomKeycodes" "off"
(**) PS2 Keyboard: CustomKeycodes disabled
(II) XINPUT: Adding extended input device "PS2 Keyboard" (type: KEYBOARD)
(II) XINPUT: Adding extended input device "PS2 Mouse" (type: MOUSE)
(II) XINPUT: Adding extended input device "Logitech G7" (type: MOUSE)

As you can see, this time it has been added as a mouse!
Now it remains to be seen why X is sometimes catching it as a mouse, and some other times as a keyboard instead (keep in mind that the device physically attached to the PC is a USB base, not the mouse).
...and how I can have it to be configured by X as a mouse (as it indeed is) every time it starts.

Offline

#3 2006-04-05 10:43:36

mario
Member
Registered: 2006-04-02
Posts: 10

Re: G7 mouse picked up as a keyboard bringing the PC down

I changed the UDEV rules to something more strict.

ACTION=="add", 
  BUS=="usb", 
  DRIVER=="usbhid", 
  SYSFS{bInterfaceProtocol}=="02", 
  NAME=="input/G7", 
  MODE=="0644",

It works if i cat it, and it does not block my other event* devices, but this isn't solving the crashing; so I still cannot use my 73€ mouse.
I think it must be something laying on the kernel side. Should I post this on some obscure really techie ML?

Anyone with a G7 mouse?

Offline

#4 2006-04-09 07:22:58

mario
Member
Registered: 2006-04-02
Posts: 10

Re: G7 mouse picked up as a keyboard bringing the PC down

No offense, but I wrote it in the first message - disabling the other mouse does not help.
Nice to see someone is interested anyway.

Offline

#5 2006-04-09 07:38:15

iphitus
Forum Fellow
From: Melbourne, Australia
Registered: 2004-10-09
Posts: 4,927

Re: G7 mouse picked up as a keyboard bringing the PC down

Um, as far as I know, there's no such thing as a kernel segfault. A segfault occurrs when an application accesses memory it isnt meant to, and thus it's killed. However, with the kernel, there's nothing to govern it's memory use, and thus, nothing to kill it with a segfault.

What's the actual error message when it crashes?

James

Offline

#6 2006-04-09 09:30:31

tpowa
Developer
From: Lauingen , Germany
Registered: 2004-04-05
Posts: 2,322

Re: G7 mouse picked up as a keyboard bringing the PC down

have you ever tried to assign persistent names to it?
/dev/input/
has subdirs that assigns persistent names to devices perhaps this helps for you.

Offline

#7 2006-04-09 10:15:54

mario
Member
Registered: 2006-04-02
Posts: 10

Re: G7 mouse picked up as a keyboard bringing the PC down

Thanx for your input.
You are obviously right, iphitus, after all the topic renaming I did I've screwed up the meaning. It wasn't the kernel that segfaulted, but X.
The PC locks up anyway, and I've read something 'bout the kernel.
As I've said, I'v made some pics to the screen, I'll post them later.
I must say that since the other day I've had different kinfd of lock-ups;
I said that after the UDEV rule had been changed nothing was fixed; but it seems that now, when X loads and locks up, the screen only goes black, without any message. I checked the log, and it seems that it locks well before the mouse check (around the graphic stuff). But don't take this for sure, this needs further testing, it may be a casual thing.
Anyway it's working 3 times on 4 now, so the restrictive UDEV rule may actually help.
I'm not a really good bug reporter, am I? :-/
Oh, and tpowa, If you read the previous messages you'll eventually see that my mouse shows up as /dev/input/G7.

Offline

#8 2006-04-11 19:46:31

mario
Member
Registered: 2006-04-02
Posts: 10

Re: G7 mouse picked up as a keyboard bringing the PC down

Yes, while before it hanged during the kde boot process, now it stops on a black screen, right after the resolution change.
The log isn't of any help, since every time it stops at a different place of the X boot.
If the mouse is not loaded, everything goes fine every time.

Offline

#9 2006-04-26 19:53:27

mario
Member
Registered: 2006-04-02
Posts: 10

Re: G7 mouse picked up as a keyboard bringing the PC down

After the last UDEV update, the screen is ALWAYS black using archck, instead using the normal kernel it has gone back to the console.
Now my f*****g mouse is disabled, would you please help me cause it's getting nasty.

Offline

#10 2006-04-30 19:37:27

smoon
Member
Registered: 2005-08-22
Posts: 468
Website

Re: G7 mouse picked up as a keyboard bringing the PC down

Hi there, I bought one of these new Razer Copperhead mice a few days ago and have had the exact same problem. Since X detected the mouse correctly once I just did not turn my box of anymore. But, unfortunately, I had to reboot a few minutes ago and my box locked up again and again - I guess I pressed the reset button for about four times - so I decided to investigate on that.

Here's what I found out: `dmesg | grep ^input' shows me that the mouse gets detected twice by the usb modules:

input: Razer Razer Copperhead Laser Mouse as /class/input/input2
input: USB HID v1.00 Mouse [Razer Razer Copperhead Laser Mouse] on usb-0000:00:13.1-1
input: Razer Razer Copperhead Laser Mouse as /class/input/input3
input: USB HID v0.01 Keyboard [Razer Razer Copperhead Laser Mouse] on usb-0000:00:13.1-1

See the difference? "USB HID v1.00 Mouse" vs. "USB HID v0.01 Keyboard". So I checked /sys/class/input/input{2,3} to see that input2 (the mouse one) got a subdirectory called mouse0 which in turn has a file called dev while input3 doesn't.

Long story short: I created a simple Udev rule to create a device node for the detected mouse input which I use in my xorg.conf:
Udev rule (one line)

KERNEL=="event*", SYSFS{name}=="Razer Razer Copperhead Laser Mouse", SYSFS{mouse0/dev}=="*" NAME="input/copperhead" MODE="664", GROUP="users"

xorg.conf

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "evdev"
        Option      "Device" "/dev/input/copperhead"
        Option      "Resolution" "2000"
EndSection

So far it's working quite well. I hope that this is the final solution since I don't feel like messing with this anymore...

Offline

#11 2006-04-30 22:30:34

mario
Member
Registered: 2006-04-02
Posts: 10

Re: G7 mouse picked up as a keyboard bringing the PC down

OK, it boots like before - the first try was a black screen.
The second one - is this one.
Thank you anyway, It's a better UDEV rule than the one I made.

Still, something is really messed up -it really should boot all the times!

(**) Logitech G7: Core Pointer
(**) Logitech G7: Device: "/dev/input/G7"
(II) Logitech G7: Found x and y relative axes
(II) Logitech G7: Found mouse buttons
(II) Logitech G7: Configuring as mouse

Offline

Board footer

Powered by FluxBB