# [SOLVED] slow mouse reaction

## kristoczaj

I just installed gentoo on my old laptop MicroQuest with a pentium MMX 266 processor.

So far everything was fine, until the mouse.

It is detected ok, but reacts very slowly.

When I say mouse, I mean built in touchpad, but that doesn't seem to matter - I tried disabling the touchpad in bios and connecting a ps2 mouse and the slow reaction was the same.

I tested the mouse (results same slow reaction) in 3 ways:

1. gpm in console

2. in fluxbox/xorg

3. cat /dev/input/mice

Heres some info about the system:

Linux i586 2.6.18-gentoo-r4

in kernel:

CONFIG_INPUT_MOUSEDEV_PSAUX=Y

CONFIG_MOUSE_PS2=Y

Any ideas what could be causing this?Last edited by kristoczaj on Sat Dec 23, 2006 11:37 pm; edited 1 time in total

----------

## E001754

Perhaps did you choose the wrong driver in your /etc/X11/xorg.conf file ? (assuming your are running xorg server >= 7.x)

I know you complained about slow mouse motion in the console, so what would the point to check the xorg.conf ?

For the good reason that I had myself a bad configuration for the keyboard in the xorg.conf file and, even if I couldn't start X, it gave me slow keyboard reaction under a text based console (the one you get on boot or by CTRL+ALT+F1)

Hope it helps

----------

## kristoczaj

Thanks for the answer..

In xorg.conf I tried using :

synaptics - acording to http://gentoo-wiki.com/HARDWARE_Synaptics_Touchpad

mouse - the most basic driver

In gpm I tried:

MOUSE=ps2

Results are exactly the same both in X and console, and nomatter if I start X or not, and nomatter if I use the thouchpad or a normal ps2 mouse!

Let me explain what I mean by

```
cat /dev/input/mice
```

On my desktop computer when I run that and then move the mouse, I see immediate reaction on the console. However on the laptop the reaction is slow, ie. 1 sec. late. Thus I think this is a problem below the driver used by X..

Thanks again for the reply.. Any other Ideas?

----------

## kristoczaj

Oh, come on! Ther's got to be a reason for this.. Hasn't anybody had this problem?

Booting from livecd results in the same slow reaction..

----------

## kristoczaj

It's the first time I'm gonna have to give up gentoo ;-( And install Win.. Somebody stop me please..

----------

## E001754

Noooooo. Don't do that. Don't install Windows. There should be anoher way.

However, I've to admit that I've no more clues about it.

Can you disable the touchpad in the BIOS of your computer ??? That should be him to put all this mess.

By typing this message, I'm thinking that perhaps you have a conflict since you are using 2 mouses. But I think that handable with Linux. Would you think anything about connecting 2 mouses along the forums or in the gentoo wiki ??

I'm very frustated not being able to help you anymore, but, please, don't install Windows. There should be a solution.  :Crying or Very sad: 

----------

## E001754

Sorry, I didn't see that you already tried to disable the touchad in the BIOS, with no more effects.

----------

## dtor

Do you see values for i8042 in /proc/interrups increasing when you use your mouse/touchpad?

----------

## kristoczaj

Thanks for the answers..

/proc/interrupts doesn't seem to change when mouse moves..

```
           CPU0       

  0:     398474          XT-PIC  timer

  1:        409          XT-PIC  i8042

  2:          0          XT-PIC  cascade

  9:         57          XT-PIC  uhci_hcd:usb1

 12:          0          XT-PIC  i8042, yenta, yenta

 14:      55155          XT-PIC  ide0

NMI:          0 

LOC:          0 

ERR:          0

MIS:          0

```

0 keeps changing

1 changes on keyboard input

14 changes also - ide is working

the rest doesn't chage.

Does this tell You anything? Cheers

----------

## kristoczaj

I tried booting from gparted livecd,   :Arrow:   same slow mouse reaction

----------

## dtor

You have problem with interrupt routing - mouse sits on IRQ12 and you get no interrupts from it. i8042 has a polling timer (every 20ms) and that's why you see some data from mouse but 20ms is not high emough (and it is not supposed to be high - it is used for hot-plug detection and is gone in 2.6.19 anyway). I think removing yenta module will fix mouse issues. Please report on linux kernel mailing list.

Also can I please see dmesg?

Thanks!

----------

## kristoczaj

Certainly, here's the current dmesg - with the yenta in kernel

```
Linux version 2.6.18-gentoo-r4 (root@laptop) (gcc version 4.1.1 (Gentoo 4.1.1-r1)) #14 Tue Dec 19 14:15:00 CET 2006

BIOS-provided physical RAM map:

 BIOS-e820: 0000000000000000 - 000000000009f800 (usable)

 BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)

 BIOS-e820: 00000000000eb000 - 0000000000100000 (reserved)

 BIOS-e820: 0000000000100000 - 0000000004000000 (usable)

 BIOS-e820: 00000000fffeb000 - 0000000100000000 (reserved)

64MB LOWMEM available.

On node 0 totalpages: 16384

  DMA zone: 4096 pages, LIFO batch:0

  Normal zone: 12288 pages, LIFO batch:3

DMI not present or invalid.

Allocating PCI resources starting at 10000000 (gap: 04000000:fbfeb000)

Detected 266.158 MHz processor.

Built 1 zonelists.  Total pages: 16384

Kernel command line: root=/dev/hda3 video=vesafb:1024x768-16@75 idebus=66

ide_setup: idebus=66

No local APIC present or hardware disabled

mapped APIC to ffffd000 (01081000)

Initializing CPU#0

PID hash table entries: 512 (order: 9, 2048 bytes)

Console: colour VGA+ 80x25

Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)

Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)

Memory: 60352k/65536k available (2692k kernel code, 4736k reserved, 994k data, 240k init, 0k highmem)

Checking if this processor honours the WP bit even in supervisor mode... Ok.

Calibrating delay using timer specific routine.. 532.75 BogoMIPS (lpj=1065505)

Mount-cache hash table entries: 512

CPU: After generic identify, caps: 008001bf 00000000 00000000 00000000 00000000 00000000 00000000

CPU: After vendor identify, caps: 008001bf 00000000 00000000 00000000 00000000 00000000 00000000

Intel Pentium with F0 0F bug - workaround enabled.

CPU: After all inits, caps: 008001bf 00000000 00000000 00000000 00000000 00000000 00000000

Compat vDSO mapped to ffffe000.

CPU: Intel Mobile Pentium MMX stepping 01

Checking 'hlt' instruction... OK.

NET: Registered protocol family 16

EISA bus registered

PCI: PCI BIOS revision 2.10 entry at 0xfd9e3, last bus=0

PCI: Using configuration type 1

Setting up standard PCI resources

Linux Plug and Play Support v0.97 (c) Adam Belay

PnPBIOS: Scanning system for PnP BIOS support...

PnPBIOS: Found PnP BIOS installation structure at 0xc00f6b00

PnPBIOS: PnP BIOS version 1.0, entry 0xf0000:0xa550, dseg 0x400

PnPBIOS: 14 nodes reported by PnP BIOS; 14 recorded by driver

SCSI subsystem initialized

usbcore: registered new driver usbfs

usbcore: registered new driver hub

PCI: Probing PCI hardware

PCI: Probing PCI hardware (bus 00)

Boot video device is 0000:00:02.0

PCI quirk: region ff00-ff3f claimed by PIIX4 ACPI

PCI quirk: region ff80-ff8f claimed by PIIX4 SMB

PCI: Using IRQ router PIIX/ICH [8086/7110] at 0000:00:03.0

NET: Registered protocol family 23

pnp: 00:00: ioport range 0x4d0-0x4d1 has been reserved

pnp: 00:00: ioport range 0xff00-0xff3f has been reserved

pnp: 00:00: ioport range 0xff80-0xff8f has been reserved

pnp: 00:00: ioport range 0x398-0x399 has been reserved

pnp: 00:01: ioport range 0x1260-0x1263 has been reserved

pnp: 00:01: ioport range 0x2260-0x2263 has been reserved

pnp: 00:01: ioport range 0x3260-0x3263 has been reserved

pnp: 00:01: ioport range 0x4260-0x4263 has been reserved

pnp: 00:01: ioport range 0x5260-0x5263 has been reserved

pnp: 00:01: ioport range 0x6260-0x6263 has been reserved

pnp: 00:01: ioport range 0x7260-0x7263 has been reserved

PCI: Bus 1, cardbus bridge: 0000:00:0a.0

  IO window: 00001000-000010ff

  IO window: 00001400-000014ff

  PREFETCH window: 10000000-11ffffff

  MEM window: 12000000-13ffffff

PCI: Bus 5, cardbus bridge: 0000:00:0a.1

  IO window: 00001800-000018ff

  IO window: 00001c00-00001cff

  PREFETCH window: 14000000-15ffffff

  MEM window: 16000000-17ffffff

PCI: setting IRQ 12 as level-triggered

PCI: Assigned IRQ 12 for device 0000:00:0a.0

PCI: Setting latency timer of device 0000:00:0a.0 to 64

PCI: Assigned IRQ 12 for device 0000:00:0a.1

NET: Registered protocol family 2

IP route cache hash table entries: 512 (order: -1, 2048 bytes)

TCP established hash table entries: 2048 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

TCP: Hash tables configured (established 2048 bind 1024)

TCP reno registered

apm: BIOS version 1.2 Flags 0x03 (Driver version 1.16ac)

Installing knfsd (copyright (C) 1996 okir@monad.swb.de).

NTFS driver 2.1.27 [Flags: R/W].

SGI XFS with no debug enabled

Initializing Cryptographic API

io scheduler noop registered

io scheduler cfq registered (default)

Limiting direct PCI/PCI transfers.

lp: driver loaded but no devices found

Non-volatile memory driver v1.2

[drm] Initialized drm 1.0.1 20051102

vesafb: , ,  (OEM: Copyright 1994 TRIDENT MICROSYSTEMS INC.

)

vesafb: VBE version: 2.0

vesafb: protected mode interface info at c000:7786

vesafb: pmi: set display start = c00c779b, set palette = c00c77ed

vesafb: no monitor limits have been set

vesafb: scrolling: redraw

Console: switching to colour frame buffer device 128x48

vesafb: framebuffer at 0xfe400000, mapped to 0xc4880000, using 4096k, total 4096k

fb0: VESA VGA frame buffer device

isapnp: Scanning for PnP cards...

isapnp: No Plug & Play device found

Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled

PNP: PS/2 Controller [PNP0303,PNP0f13] at 0x60,0x64 irq 1,12

serio: i8042 AUX port at 0x60,0x64 irq 12

serio: i8042 KBD port at 0x60,0x64 irq 1

mice: PS/2 mouse device common for all mice

loop: loaded (max 8 devices)

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2

ide: Assuming 66MHz system bus speed for PIO modes

PIIX4: IDE controller at PCI slot 0000:00:03.1

PIIX4: chipset revision 1

PIIX4: not 100% native mode: will probe irqs later

    ide0: BM-DMA at 0xfcd0-0xfcd7, BIOS settings: hda:DMA, hdb:pio

Probing IDE interface ide0...

input: AT Translated Set 2 keyboard as /class/input/input0

hda: IBM-DTCA-23240, ATA DISK drive

hdb: TOSHIBA CD-ROM XM-1602B, ATAPI CD/DVD-ROM drive

ide0 at 0x1f0-0x1f7,0x3f6 on irq 14

hda: max request size: 128KiB

hda: 6354432 sectors (3253 MB) w/468KiB Cache, CHS=6304/16/63, UDMA(33)

hda: cache flushes not supported

 hda: hda1 hda2 hda3

hdb: ATAPI 20X CD-ROM drive, 128kB Cache, DMA

Uniform CD-ROM driver Revision: 3.20

Yenta: CardBus bridge found at 0000:00:0a.0 [0000:0000]

Yenta: ISA IRQ mask 0x0cb8, PCI irq 12

Socket status: 30000006

Yenta: CardBus bridge found at 0000:00:0a.1 [0000:0000]

Yenta: ISA IRQ mask 0x0cb8, PCI irq 12

Socket status: 30000006

USB Universal Host Controller Interface driver v3.0

PCI: setting IRQ 9 as level-triggered

PCI: Found IRQ 9 for device 0000:00:03.2

PCI: Sharing IRQ 9 with 0000:00:02.0

uhci_hcd 0000:00:03.2: UHCI Host Controller

uhci_hcd 0000:00:03.2: new USB bus registered, assigned bus number 1

uhci_hcd 0000:00:03.2: irq 9, io base 0x0000fce0

usb usb1: configuration #1 chosen from 1 choice

hub 1-0:1.0: USB hub found

hub 1-0:1.0: 2 ports detected

Initializing USB Mass Storage driver...

hub 1-0:1.0: over-current change on port 1

usb 1-1: new full speed USB device using uhci_hcd and address 2

usb 1-1: configuration #1 chosen from 1 choice

usbcore: registered new driver usb-storage

USB Mass Storage support registered.

usb0: register 'gl620a' at usb-0000:00:03.2-1, Genesys GeneLink, 00:00:00:00:00:00

usbcore: registered new driver gl620a

i2c /dev entries driver

piix4_smbus 0000:00:03.3: Found 0000:00:03.3 device

Advanced Linux Sound Architecture Driver Version 1.0.12rc1 (Thu Jun 22 13:55:50 2006 UTC).

ALSA device list:

  No soundcards found.

ip_conntrack version 2.4 (512 buckets, 4096 max) - 172 bytes per conntrack

ip_tables: (C) 2000-2006 Netfilter Core Team

TCP bic registered

NET: Registered protocol family 1

NET: Registered protocol family 17

IrCOMM protocol (Dag Brattli)

Using IPI Shortcut mode

Time: tsc clocksource has been installed.

ReiserFS: hda3: found reiserfs format "3.6" with standard journal

ReiserFS: hda3: using ordered data mode

ReiserFS: hda3: journal params: device hda3, size 8192, journal first block 18, max trans len 1024, max batch 900, max commit age 30, max trans age 30

ReiserFS: hda3: checking transaction log (hda3)

ReiserFS: hda3: Using r5 hash to sort names

VFS: Mounted root (reiserfs filesystem) readonly.

Freeing unused kernel memory: 240k freed

Synaptics Touchpad, model: 1, fw: 4.1, id: 0x8148a1, caps: 0x0/0x0

input: SynPS/2 Synaptics TouchPad as /class/input/input1

Adding 254008k swap on /dev/hda2.  Priority:-1 extents:1 across:254008k

```

Now I'll try removing yenta..

Cheers

----------

## kristoczaj

Threw out yenta, but still nothing on 12 and still the same slow reaction  :Sad:  ..

cat /etc/interrupts

```
           CPU0       

  0:     844003          XT-PIC  timer

  1:        301          XT-PIC  i8042

  2:          0          XT-PIC  cascade

  7:          0          XT-PIC  parport0

  9:        127          XT-PIC  uhci_hcd:usb1

 12:          0          XT-PIC  i8042

 14:        960          XT-PIC  ide0

NMI:          0 

LOC:          0 

ERR:          0

MIS:          0

```

And here's part of dmesg, which might be interesting, but to be honest, I've no idea what all this is about   :Confused: 

```
PCI: Bus 1, cardbus bridge: 0000:00:0a.0

  IO window: 00001000-000010ff

  IO window: 00001400-000014ff

  PREFETCH window: 10000000-11ffffff

  MEM window: 12000000-13ffffff

PCI: Bus 5, cardbus bridge: 0000:00:0a.1

  IO window: 00001800-000018ff

  IO window: 00001c00-00001cff

  PREFETCH window: 14000000-15ffffff

  MEM window: 16000000-17ffffff

PCI: setting IRQ 12 as level-triggered

PCI: Assigned IRQ 12 for device 0000:00:0a.0

PCI: Setting latency timer of device 0000:00:0a.0 to 64

PCI: Assigned IRQ 12 for device 0000:00:0a.1

```

Thanks for the help, but still looking for a solution..

----------

## dtor

Right, for some reason PCI tries to use IRQ12 for PCMCIA/cardbus and your keyboard controller does not like it. As I said, post message with dmesg on linux kernel mailing list (linux-kernel@vger.kernel.org)

----------

## DirtyHairy

Can't you just make IRQ12 unavailable for PCI in the BIOS?

----------

## kristoczaj

 *DirtyHairy wrote:*   

> Can't you just make IRQ12 unavailable for PCI in the BIOS?

 

I'm afraid my bios doesn't allow that..

----------

## dmartinsca

Looking at a list of kernel parameters i see some which look like they might be useful although I really have no idea if any will help or what the implications of using them are (high cpu usage?). These are the ones which caught my eye

```
irqfixup

irqpoll

i8042.nopnp
```

The list is here, don't know how recent it is: http://www.stanton-finley.net/kernel-parameters.txt

Maybe this will put you on the right track to finding a solution!

Looking again at this thread I think this kernel option might actually be the most useful:

```
pci=irqmask=0xMMMM   

[IA-32] Set a bit mask of IRQs allowed to be assigned automatically to PCI devices. You can make the kernel exclude IRQs of your ISA cards this way.
```

I'm looking into the format of the MMMM part now, i'll let you know what i find.

----------

## dmartinsca

I can't find anything explaining the format for this argument, but i think a value of pci=irqmask=0x1000 would tell the kernel not to use IRQ12 for PCI. Searching for ps 2 mouse irqmask turns up a lot of pages for knoppix where they suggest using pci=irqmask=0x0e98 if your ps/2 mouse doesn't work.

----------

## kristoczaj

Suuper  :Wink:  The first thing I tried works!!

pci=irqmask=0x0e98

Thanks for the help! Phiew, I don't have to install Winz   :Very Happy: 

Cheers!

edit:

Just a guess, it works for me:

I believe the mask works like this: each bit from least to most significant corresponds to an IRQ; on tells PCI to stay away from it.

I finally set pci=irqmask=0x0a59, because I want PCI to say away from irqs 1 4 5 7 10 12

----------

