2.6.11 acpi battery state readout as source of keyboard/touchpadtroubles

From: Andreas Steinmetz
Date: Wed Mar 30 2005 - 14:20:18 EST


In traceing the source of my sporadic synaptics touchpad troubles

psmouse.c: TouchPad at isa0060/serio4/input0 lost sync at byte 1
psmouse.c: TouchPad at isa0060/serio4/input0 lost sync at byte 1
psmouse.c: TouchPad at isa0060/serio4/input0 lost sync at byte 1
psmouse.c: TouchPad at isa0060/serio4/input0 lost sync at byte 1
psmouse.c: TouchPad at isa0060/serio4/input0 lost sync at byte 1
psmouse.c: TouchPad at isa0060/serio4/input0 - driver resynched.

and keyboard troubles (sporadically lost key up/down events) on an Acer
Aspire 1520 (x86_64, latest bios v1.09) I did enable the
report_lost_ticks option which did spit out stuff like the following at
regular intervals:

time.c: Lost 17 timer tick(s)! rip handle_IRQ_event+0x20/0x60)
time.c: Lost 8 timer tick(s)! rip handle_IRQ_event+0x20/0x60)
time.c: Lost 19 timer tick(s)! rip handle_IRQ_event+0x20/0x60)
time.c: Lost 8 timer tick(s)! rip handle_IRQ_event+0x20/0x60)
time.c: Lost 18 timer tick(s)! rip handle_IRQ_event+0x20/0x60)
time.c: Lost 8 timer tick(s)! rip handle_IRQ_event+0x20/0x60)

This looked suspiciously like it happended when the the kde laptop
applet polled the battery status. So I did terminate the applet.

The result was no more lost ticks, no lost keyboard events and no more
lost touchpad sync.

To verify ACPI battery data as the source of trouble i did a simple

cat /proc/acpi/battery/BAT0/state

which instantly resulted in:

time.c: Lost 19 timer tick(s)! rip handle_IRQ_event+0x20/0x60)

So it seems ACPI battery readout does cause some long running interrupt
disable and that it causes nasty side effects for the 8042 input.

Note that doing

cat /proc/acpi/battery/BAT0/info

doesn't cause any trouble (battery alarm is unsupported).

I can ignore the lost ticks but the keyboard/touchpad problems caused by
the state readout are definitely nasty.

Any ideas?
--
Andreas Steinmetz SPAMmers use robotrap@xxxxxxxx
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/