Keyboard Timeout

sterwill@vader.eresnet.com
Wed, 26 Aug 1998 22:34:11 -0500 (CDT)


This is annoying as heck. I apologize for the lack of
technical information, but I'm expecting my machine to lock
up at any second and I just want to get this out.

[ Read the stuff below, then come back to this. This is
a summary of the damages. 2.1.118 has problems with
sound, but I can deal with that. It seems unrelated
to the "Keyboard timeout" errors I'm getting when it
seems the IDE drive is getting poked in the wrong way.
DMA is _off_ with this drive, as it has been for
years, just because it didn't make it faster and I've
always considered it uneccessary.

The sound problems seem completely unrelated to the
lockups, but I thought they could possibly lead to a
fix, too. ]

Machine: Dual P II 266, Maxtor IDE drive (DMA disabled for
the heck of it), BusLogic BT-958 SCSI with 8X Plextor CDROM,
4X Ricoh MP6200 CDRW, 9.1 GB IBM UltraStar ZX. SuperMicro
P6DLF Motherboard, 128 MB SDRAM, 66 MHz (normal) bus setting.

Starting with kernel 2.1.115, I started getting seemingly
random "Keyboard Timeout" errors sitting at the console
(vgacon). This happened VERY rarely, and I just ignored it,
hoping it'd go away. :) Yesterday, I upgraded from 2.1.115
to 2.1.117, since I thought it might fix a hang I had with
my CDRW when using the newest xcdroast (downloaded it yester-
day) to burn a CD. While it was burning away, I opened
an rxvt and loaded elm. The IDE bus took a hit (LED blinked)
and the machine locked solid. I was hoping 2.1.117 would
fix this.

This morning, 2.1.118 came out, so I thought I'd take
a look at the CHANGES and upgrade. I did. Sound broke.
I'm using Perex's ALSA drivers (set 0.1.4, 'stable').
The drivers would load but the mixer would be unwritable.
alsamixer segfaulted, and writing to the /proc/sound/0/mixer0
file would break cat (even on a read). As soon as I try
to rmmod the sound modules, the kernel oopses. (the
output is at the bottom of this message).

This oops is very repeatable. I tried the newest CVS release
of the sound drivers, same problem. The sound drivers, as it
turns out, have nothing to do with the reason the system's
pulling keyboard errors, but it's interesting nonetheless.

I can overlook not having sound, that's Perex's problem. :P
But I can't stand these random "Keyboard Timeout" errors.
Here's how I can reproduce it:

Boot 2.1.117, or 2.1.118. As soon as the login prompt
appears, log in. The PPP will be dialing up in the background.
Fire up elm, just to hit the IDE disk (I think is is important).
Switch to the second virtual console. Log in. Right after
it says "No mail." (when spawning the shell), it triggers the
"Keyboard Timeout." Complete lockup, no gpm moving the
cursor, pulling the UPS won't trigger the daemon to beep, etc.
If I get the timing right, I can do this on every boot.

I normally use isapnp to poke my Gus PnP before I load the
ALSA drivers. I thought this might have something to do with
the lockups. Nope. If I don't do isapnp at boot, I can
still reproduce the error. It happens with no sound drivers.
It also happens when I yank my (unused but driver installed-for
Tulip Ethernet card). It just seems to happen when VCs are
newly created and logged into (pty problem?).

I've had this hardware setup for years, and had no problems
anywhere near to this. The 2.1.11X series has been quite
stable for me, and this keyboard stuff only started about
a week ago.

The kernel is compiled with EGCS 1.0.3a, which has served
me well for months. I even stripped all the hardware
out of the machine and put it back in. Everything's got
good contact with its neighboring components.

I'm very surprised I've gotten this far with this message.
Here comes some of the technical info. If someone wants
me to give more, just ask. I've also got another very minor
annoyance with 2.1.11X... it can't reboot on this machine.
shutdown -r now just ends at "disabling symmetric IO mode..."
and requires a touch of the reset button. 2.0 doesn't
have this problem. Here's some of the technical info:

ksymoops tells me this when fed with the oops stuff
below:

>>EIP: c887a164 cannot be resolved
Trace: c886a241
Trace: c0126f03 <sys_lseek+17/118>
Trace: c0118f8d <do_exit+11d/264>
Trace: c01190aa <do_exit+23a/264>
Trace: c0109b84 <system_call+20/38>
Code:
Code: 8b 57 44 movl 0x44(%edi),%edx
Code: 85 d2 testl %edx,%edx
Code: 74 63 je 6a <_EIP+0x6a>
Code: 8b 1a movl (%edx),%ebx
Code: 8d b3 d8 00 00 leal 0xd8(%ebx),%esi
Code: 89 f1 movl %esi,%ecx
Code: ff 49 00 decl 0x0(%ecx)

Aug 26 18:36:08 dogbert kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000047
Aug 26 18:36:08 dogbert kernel: current->tss.cr3 = 00101000, Lr3 = 00101000
Aug 26 18:36:08 dogbert kernel: *pde = 00000000
Aug 26 18:36:08 dogbert kernel: Oops: 0000
Aug 26 18:36:08 dogbert kernel: CPU: 1
Aug 26 18:36:08 dogbert kernel: EIP: 0010:[<c887a164>]
Aug 26 18:36:08 dogbert kernel: EFLAGS: 00010286
Aug 26 18:36:08 dogbert kernel: eax: 00000000 ebx: 00000000 ecx: c887a15c edx: 00000000
Aug 26 18:36:08 dogbert kernel: esi: 00000000 edi: 00000003 ebp: 00000001 esp: c6a7df60
Aug 26 18:36:08 dogbert kernel: ds: 0018 es: 0018 ss: 0018
Aug 26 18:36:08 dogbert kernel: Process alsamixer (pid: 261, process nr: 26, stackpage=c6a7d000)
Aug 26 18:36:08 dogbert kernel: Stack: c7652a40 00000001 c886a241 00000000 00000000 00000000 00000003 c745db40
Aug 26 18:36:08 dogbert kernel: c0126f03 c745db40 00000003 00000001 c0118f8d c745db40 c7652a40 c6a7c000
Aug 26 18:36:08 dogbert kernel: ffffffff fffffffc 00000000 c7652a40 c7652acc c6a7c000 c01190aa 00000000
Aug 26 18:36:08 dogbert kernel: Call Trace: [<c886a241>] [<c0126f03>] [<c0118f8d>] [<c01190aa>] [<c0109b84>]
Aug 26 18:36:08 dogbert kernel: Code: 8b 57 44 85 d2 74 63 8b 1a 8d b3 d8 00 00 00 89 f1 ff 49 00

It's funny that function c887a164 can't be found.
Is this normal? Is GCC barfing on me? I'd try
to track the stuff down, but it's a bit beyond my
kernel hacking skills.

-- 
Shaw Terwilliger (ten.tenecnavda@giwt)

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html