Skip to contentSkip to conversation

Mouse/Keyboard problems with 2.5.38

DISCUSSION Stian Jordet 3 participants 21 messages Sep 25, 2002 – Oct 9, 2002 1 message not in the archive Input drivers

lore
Share & tools
lore
#0 lore raw

Hello,
I haven't really tried a 2.5 kernel for a very long time. I used some of the earliest, but then I suddenly had problems booting one of them, and haven't really taken much effort in getting it boot lately.

But now I decided I should try again. I got 2.5.38 booted after some initial trouble. But, I have a couple of weird problems. First, the mouse. I have a Logitech Cordless Optical mouse. With kernel 2.4.x I use MouseManPlusPS/2 as the XFree mouse-driver. Then I can use the wheel and the fourth button just as expected. But with kernel 2.5.38 neither the wheel or the fourth button works. I change protocol to IMPS/2 in XFree, and everything works like expected, but the fourth button works just like pussing the wheel (third button). This is excactly the same behavior as with 2.4.20-pre7 (that's why I use MouseManPlusPS/2). Anyone have a clue why this doesn't work with kernel 2.5.38?

Second problem, if I press SHIFT+PAGEUP, my computer freezes. It spits out this message: "input: AT Set 2 keyboard on isa0060/serio0, and then it's dead. I have a Logitech cordless keyboard.

Anyone else experienced this?

Best regards,
Stian Jordet

#1 lore raw

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Quoted 10 lines · Stian Jordet

But now I decided I should try again. I got 2.5.38 booted after some initial trouble. But, I have a couple of weird problems. First, the mouse. I have a Logitech Cordless Optical mouse. With kernel 2.4.x I use MouseManPlusPS/2 as the XFree mouse-driver. Then I can use the wheel and the fourth button just as expected. But with kernel 2.5.38 neither the wheel or the fourth button works. I change protocol to IMPS/2 in XFree, and everything works like expected, but the fourth button works just like pussing the wheel (third button). This is excactly the same behavior as with 2.4.20-pre7 (that's why I use MouseManPlusPS/2). Anyone have a clue why this doesn't work with kernel 2.5.38?

Input support was merged, that fundamentally changes the way input handling works. The new input layer mousedev handler tries to guess which mode you want. Maybe you want the explorer PS/2 protocol? Or wait for X to get a nice event input driver.

Quoted 3 lines

Second problem, if I press SHIFT+PAGEUP, my computer freezes. It spits out this message: "input: AT Set 2 keyboard on isa0060/serio0, and then it's dead. I have a Logitech cordless keyboard.

I'm using a logitech cordless too. However mine is on USB, and I guess you are using some PS/2 connector? USB is much better tested, so there may be some bugs.

Brad

- --
http://conf.linux.org.au. 22-25Jan2003. Perth, Aust. Tickets booked. -----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE9kkr2W6pHgIdAuOMRAhibAJ9ZJJoCQCvOExxTxQFYZvfN91mp3QCeJNDC WT/qGY0Dj7XogoVMJZ4jywo=
=YG6j
-----END PGP SIGNATURE-----

#2 lore raw
In reply to Stian Jordet
Quoted 4 lines · Stian Jordet

I haven't really tried a 2.5 kernel for a very long time. I used some of the earliest, but then I suddenly had problems booting one of them, and haven't really taken much effort in getting it boot lately.

Quoted 10 lines

But now I decided I should try again. I got 2.5.38 booted after some initial trouble. But, I have a couple of weird problems. First, the mouse. I have a Logitech Cordless Optical mouse. With kernel 2.4.x I use MouseManPlusPS/2 as the XFree mouse-driver. Then I can use the wheel and the fourth button just as expected. But with kernel 2.5.38 neither the wheel or the fourth button works. I change protocol to IMPS/2 in XFree, and everything works like expected, but the fourth button works just like pussing the wheel (third button). This is excactly the same behavior as with 2.4.20-pre7 (that's why I use MouseManPlusPS/2). Anyone have a clue why this doesn't work with kernel 2.5.38?

Use ExplorerPS/2 in XFree to get access to all the buttons. The new input drivers handle the MouseMan protocol right in the kernel, and independently on the real mouse type (ImPS/2, ImExPS/2, GenPS/2, Logitech PS2++ USB, Busmouse, whatever) export an ExplorerPS/2-like virtual mouse to userspace. This is what most applications support correctly, and is compatible with generic PS/2 and ImPS/2 protocols also.

Quoted 5 lines

Second problem, if I press SHIFT+PAGEUP, my computer freezes. It spits out this message: "input: AT Set 2 keyboard on isa0060/serio0, and then it's dead. I have a Logitech cordless keyboard.

Anyone else experienced this?

I fixed this in about 2.5.36. Please #define ATKBD_DEBUG in drivers/input/keyboard/atkbd.c, and send me the kernel output just before the crash, please. I'll try to reproduce it here meanwhile.

Signature · 2 lines
Vojtech Pavlik
SuSE Labs
#3 lore raw

tor, 2002-09-26 kl. 10:58 skrev Vojtech Pavlik:

Quoted 17 lines · Stian Jordet
Quoted 5 lines

I haven't really tried a 2.5 kernel for a very long time. I used some of the earliest, but then I suddenly had problems booting one of them, and haven't really taken much effort in getting it boot lately.

Quoted 10 lines

But now I decided I should try again. I got 2.5.38 booted after some initial trouble. But, I have a couple of weird problems. First, the mouse. I have a Logitech Cordless Optical mouse. With kernel 2.4.x I use MouseManPlusPS/2 as the XFree mouse-driver. Then I can use the wheel and the fourth button just as expected. But with kernel 2.5.38 neither the wheel or the fourth button works. I change protocol to IMPS/2 in XFree, and everything works like expected, but the fourth button works just like pussing the wheel (third button). This is excactly the same behavior as with 2.4.20-pre7 (that's why I use MouseManPlusPS/2). Anyone have a clue why this doesn't work with kernel 2.5.38?

Quoted 6 lines

Use ExplorerPS/2 in XFree to get access to all the buttons. The new input drivers handle the MouseMan protocol right in the kernel, and independently on the real mouse type (ImPS/2, ImExPS/2, GenPS/2, Logitech PS2++ USB, Busmouse, whatever) export an ExplorerPS/2-like virtual mouse to userspace. This is what most applications support correctly, and is compatible with generic PS/2 and ImPS/2 protocols also.

That did the trick, thank you very much :) And I see ExplorerPS/2 works like a charm with 2.4.x as well, so everything is just fine :) I guess this actually was a stupid question, and I'm sorry.

Quoted 10 lines
Quoted 6 lines

Second problem, if I press SHIFT+PAGEUP, my computer freezes. It spits out this message: "input: AT Set 2 keyboard on isa0060/serio0, and then it's dead. I have a Logitech cordless keyboard.

Anyone else experienced this?

I fixed this in about 2.5.36. Please #define ATKBD_DEBUG in drivers/input/keyboard/atkbd.c, and send me the kernel output just before the crash, please. I'll try to reproduce it here meanwhile.

I'm added #define ATKBD_DEBUG right below all the other define's in atkbd.c, did a make clean; make dep; make bzImage and tried again. I can't see any difference. It still just prints "input: AT Set 2 keyboard on isa0060/serio0". I did, however, find out that if I press SHIFT+what ever of the buttons arrows, insert, home, page up/down, delete and end, I get just the same behaviour. It does not happen with CTRL or ALT.

Thank you very much.

Best regards,
Stian Jordet

#4 lore raw
Quoted 6 lines · Stian Jordet
Quoted 6 lines
Quoted 5 lines

Second problem, if I press SHIFT+PAGEUP, my computer freezes. It spits out this message: "input: AT Set 2 keyboard on isa0060/serio0, and then it's dead. I have a Logitech cordless keyboard.

Anyone else experienced this?

Quoted 8 lines
Quoted 3 lines

I fixed this in about 2.5.36. Please #define ATKBD_DEBUG in drivers/input/keyboard/atkbd.c, and send me the kernel output just before the crash, please. I'll try to reproduce it here meanwhile.

I'm added #define ATKBD_DEBUG right below all the other define's in atkbd.c, did a make clean; make dep; make bzImage and tried again. I can't see any difference. It still just prints "input: AT Set 2 keyboard on isa0060/serio0".

Hmm, have you looked into 'dmesg'? It prints the information with KERN_DEBUG priority, which often won't make it on the screen or into the logs ...

Quoted 3 lines

I did, however, find out that if I press SHIFT+what
ever of the buttons arrows, insert, home, page up/down, delete and end, I get just the same behaviour. It does not happen with CTRL or ALT.

Can you try passing 'i8042_direct' on the kernel command line to see if it cures the problem? It looks like your keyboard is doing some very strange 84-key-at-emulation, stranger than others do ...

Quoted 1 line

Thank you very much.

Signature · 2 lines
Vojtech Pavlik
SuSE Labs
#5 lore raw

tor, 2002-09-26 kl. 13:37 skrev Vojtech Pavlik:

Quoted 4 lines

Hmm, have you looked into 'dmesg'? It prints the information with KERN_DEBUG priority, which often won't make it on the screen or into the logs ...

Quoted 8 lines
Quoted 3 lines

I did, however, find out that if I press SHIFT+what
ever of the buttons arrows, insert, home, page up/down, delete and end, I get just the same behaviour. It does not happen with CTRL or ALT.

Can you try passing 'i8042_direct' on the kernel command line to see if it cures the problem? It looks like your keyboard is doing some very strange 84-key-at-emulation, stranger than others do ...

You had, ofcourse right, it was in my syslog. But the keystroke that make my computer freeze isn't there. This is the last line:

kernel: atkbd.c: Received 1d flags 00

But I find this line several places, so it's obviously not the one causing the crash. Altough, when passing i8042_direct to the kernel, everything works just as expected. My keyboard is a Logitech Cordless Desktop. The keyboard and mouse shares the same receiver, which both is connected via ps/2.

Best regards,
Stian Jordet

#6 lore raw
Quoted 16 lines · Stian Jordet

tor, 2002-09-26 kl. 13:37 skrev Vojtech Pavlik:

Quoted 4 lines

Hmm, have you looked into 'dmesg'? It prints the information with KERN_DEBUG priority, which often won't make it on the screen or into the logs ...

Quoted 8 lines
Quoted 3 lines

I did, however, find out that if I press SHIFT+what
ever of the buttons arrows, insert, home, page up/down, delete and end, I get just the same behaviour. It does not happen with CTRL or ALT.

Can you try passing 'i8042_direct' on the kernel command line to see if it cures the problem? It looks like your keyboard is doing some very strange 84-key-at-emulation, stranger than others do ...

You had, ofcourse right, it was in my syslog. But the keystroke that make my computer freeze isn't there. This is the last line:

Quoted 7 lines

kernel: atkbd.c: Received 1d flags 00

But I find this line several places, so it's obviously not the one causing the crash. Altough, when passing i8042_direct to the kernel, everything works just as expected. My keyboard is a Logitech Cordless Desktop. The keyboard and mouse shares the same receiver, which both is connected via ps/2.

Great. So, the problem is in i8042.c untranslating the keycodes. Please also enable #define I8042_DEBUG_IO in drivers/input/serio/i8042.h, don't start X, enable maximum console loglevel by "echo 16 16 16 16 > /proc/sys/kernel/printk", and press the killing key combination. (without i8042_direct, of course). Then send me the ten last or so lines printed. This should allow me to fix the problem. Thanks.

Signature · 2 lines
Vojtech Pavlik
SuSE Labs
#7 lore raw

tor, 2002-09-26 kl. 18:57 skrev Vojtech Pavlik:

Quoted 6 lines

Great. So, the problem is in i8042.c untranslating the keycodes. Please also enable #define I8042_DEBUG_IO in drivers/input/serio/i8042.h, don't start X, enable maximum console loglevel by "echo 16 16 16 16 > /proc/sys/kernel/printk", and press the killing key combination. (without i8042_direct, of course). Then send me the ten last or so lines printed. This should allow me to fix the problem. Thanks.

Ok, I did as prescribed. I did press SHIFT+PAGEUP, and it came quite a lot of output, more than one page. I'm not sure if this is enough, but it was all I could see. When I booted, I looked in the syslog, but none of what I wrote off the screen was there. I guess that's because it froze. Ok, here come. This is writeoff, so might be some small errors.

I don't know, but I guess I must have touched the mouse to get the four last lines? I guess so, but I'm including them to be sure.

i8042.c: fa <- i8042 (interrupt, kbd, 1) [60519] atkbd.c: Received fa flags 00
atkbd.c: Sent: 02
i8042.c: 02 -> i8042 (kbd-data) [60519] i8042.c: fa <- i8042 (interrupt, kbd, 1) [60523] atkbd.c: Received fa flags 00
atkbd.c: Sent: f0
i8042.c: f0 -> i8042 (kbd-data) [60523] i8042.c: fa <- i8042 (interrupt, kbd, 1) [60527] atkbd.c: Received fa flags 00
atkbd.c: Sent: 00
i8042.c: 00 -> i8042 (kbd-data) [60527] i8042.c: fa <- i8042 (interrupt, kbd, 1) [60531] atkbd.c: Received fa flags 00
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [60532] atkbd.c: Received 02 flags 00
input: AT Set 2 keyboard on isa0060/serio0 i8042.c: b6 <- i8042 (interrupt, kbd, 1) [60599] atkbd.c: Received f0 flags 00
atkbd.c: Received 59 flags 00
i8042.c: 38 <- i8042 (interrupt, aux, 12) [104472] i8042.c: fd <- i8042 (interrupt, aux, 12) [104473] i8042.c: fe <- i8042 (interrupt, aux, 12) [104474] i8042.c: 00 <- i8042 (interrupt, aux, 12) [104475]

I hope you get something out of this, I don't, for sure. The input:... line is the same as I get without any debug info when it locks.

Oh well, time for some schoolwork.

Thanks.

Best regards,
Stian Jordet

#8 lore raw
Quoted 8 lines · Stian Jordet

tor, 2002-09-26 kl. 18:57 skrev Vojtech Pavlik:

Quoted 6 lines

Great. So, the problem is in i8042.c untranslating the keycodes. Please also enable #define I8042_DEBUG_IO in drivers/input/serio/i8042.h, don't start X, enable maximum console loglevel by "echo 16 16 16 16 > /proc/sys/kernel/printk", and press the killing key combination. (without i8042_direct, of course). Then send me the ten last or so lines printed. This should allow me to fix the problem. Thanks.

Quoted 8 lines

Ok, I did as prescribed. I did press SHIFT+PAGEUP, and it came quite a lot of output, more than one page. I'm not sure if this is enough, but it was all I could see. When I booted, I looked in the syslog, but none of what I wrote off the screen was there. I guess that's because it froze. Ok, here come. This is writeoff, so might be some small errors.

I don't know, but I guess I must have touched the mouse to get the four last lines? I guess so, but I'm including them to be sure.

That's right. :)

Quoted 27 lines

i8042.c: fa <- i8042 (interrupt, kbd, 1) [60519] atkbd.c: Received fa flags 00
atkbd.c: Sent: 02
i8042.c: 02 -> i8042 (kbd-data) [60519] i8042.c: fa <- i8042 (interrupt, kbd, 1) [60523] atkbd.c: Received fa flags 00
atkbd.c: Sent: f0
i8042.c: f0 -> i8042 (kbd-data) [60523] i8042.c: fa <- i8042 (interrupt, kbd, 1) [60527] atkbd.c: Received fa flags 00
atkbd.c: Sent: 00
i8042.c: 00 -> i8042 (kbd-data) [60527] i8042.c: fa <- i8042 (interrupt, kbd, 1) [60531] atkbd.c: Received fa flags 00
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [60532] atkbd.c: Received 02 flags 00
input: AT Set 2 keyboard on isa0060/serio0 i8042.c: b6 <- i8042 (interrupt, kbd, 1) [60599] atkbd.c: Received f0 flags 00
atkbd.c: Received 59 flags 00
i8042.c: 38 <- i8042 (interrupt, aux, 12) [104472] i8042.c: fd <- i8042 (interrupt, aux, 12) [104473] i8042.c: fe <- i8042 (interrupt, aux, 12) [104474] i8042.c: 00 <- i8042 (interrupt, aux, 12) [104475]

Quoted 4 lines

I hope you get something out of this, I don't, for sure. The input:... line is the same as I get without any debug info when it locks.

Oh well, time for some schoolwork.

Unfortunately the little bit of information I needed scrolled away already. Can you try with the other shift (right?)? That won't probably crash your machine, but will most likely generate an "Unknown scancode" message. Again, send me the log lines. This time they should make it in the syslog well.

Thanks.

Signature · 2 lines
Vojtech Pavlik
SuSE Labs
#9 lore raw

fre, 2002-09-27 kl. 09:10 skrev Vojtech Pavlik:

Quoted 5 lines

Unfortunately the little bit of information I needed scrolled away already. Can you try with the other shift (right?)? That won't probably crash your machine, but will most likely generate an "Unknown scancode" message. Again, send me the log lines. This time they should make it in the syslog well.

Ok, the combination which freezes the computer is right SHIFT, and pageup/down, etc. Left SHIFT works just like expected. This time I first wrote 'cp /var/log/syslog /tmp/syslog', then 'echo cut-here > /var/log/syslog' Left-SHIFT+PAGEUP, arrow up two times, to get the cp.., enter. Then I edited /tmp/syslog and copied only what was after "cut-here". So the keystrokes included here should be Left-SHIFT+PAGEUP, ARROW-UP, ARROW-UP, ENTER. If this works like I think it should. As you can see, it did not generate an "Unknown scancode"...

Sep 27 13:37:37 chevrolet kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [317387]
Sep 27 13:37:37 chevrolet kernel: atkbd.c: Received f0 flags 00
Sep 27 13:37:37 chevrolet kernel: atkbd.c: Received 5a flags 00
Sep 27 13:37:39 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [319722]
Sep 27 13:37:39 chevrolet kernel: atkbd.c: Received 12 flags 00
Sep 27 13:37:39 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [319872]
Sep 27 13:37:39 chevrolet kernel: atkbd.c: Received e0 flags 00
Sep 27 13:37:39 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [319879]
Sep 27 13:37:39 chevrolet kernel: atkbd.c: Received f0 flags 00
Sep 27 13:37:39 chevrolet kernel: atkbd.c: Received 12 flags 00
Sep 27 13:37:39 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [319882]
Sep 27 13:37:39 chevrolet kernel: atkbd.c: Received e0 flags 00
Sep 27 13:37:39 chevrolet kernel: i8042.c: 49 <- i8042 (interrupt, kbd, 1) [319885]
Sep 27 13:37:39 chevrolet kernel: atkbd.c: Received 7d flags 00
Sep 27 13:37:39 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [319948]
Sep 27 13:37:39 chevrolet kernel: atkbd.c: Received e0 flags 00
Sep 27 13:37:39 chevrolet kernel: i8042.c: c9 <- i8042 (interrupt, kbd, 1) [319955]
Sep 27 13:37:39 chevrolet kernel: atkbd.c: Received f0 flags 00
Sep 27 13:37:39 chevrolet kernel: atkbd.c: Received 7d flags 00
Sep 27 13:37:39 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [319958]
Sep 27 13:37:39 chevrolet kernel: atkbd.c: Received e0 flags 00
Sep 27 13:37:39 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [319961]
Sep 27 13:37:39 chevrolet kernel: atkbd.c: Received 12 flags 00
Sep 27 13:37:40 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [320061]
Sep 27 13:37:40 chevrolet kernel: atkbd.c: Received f0 flags 00
Sep 27 13:37:40 chevrolet kernel: atkbd.c: Received 12 flags 00
Sep 27 13:37:42 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [322157]
Sep 27 13:37:42 chevrolet kernel: atkbd.c: Received e0 flags 00
Sep 27 13:37:42 chevrolet kernel: i8042.c: 48 <- i8042 (interrupt, kbd, 1) [322160]
Sep 27 13:37:42 chevrolet kernel: atkbd.c: Received 75 flags 00
Sep 27 13:37:42 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [322274]
Sep 27 13:37:42 chevrolet kernel: atkbd.c: Received e0 flags 00
Sep 27 13:37:42 chevrolet kernel: i8042.c: c8 <- i8042 (interrupt, kbd, 1) [322280]
Sep 27 13:37:42 chevrolet kernel: atkbd.c: Received f0 flags 00
Sep 27 13:37:42 chevrolet kernel: atkbd.c: Received 75 flags 00
Sep 27 13:37:42 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [322649]
Sep 27 13:37:42 chevrolet kernel: atkbd.c: Received e0 flags 00
Sep 27 13:37:42 chevrolet kernel: i8042.c: 48 <- i8042 (interrupt, kbd, 1) [322653]
Sep 27 13:37:42 chevrolet kernel: atkbd.c: Received 75 flags 00
Sep 27 13:37:42 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [322756]
Sep 27 13:37:42 chevrolet kernel: atkbd.c: Received e0 flags 00
Sep 27 13:37:42 chevrolet kernel: i8042.c: c8 <- i8042 (interrupt, kbd, 1) [322762]
Sep 27 13:37:42 chevrolet kernel: atkbd.c: Received f0 flags 00
Sep 27 13:37:42 chevrolet kernel: atkbd.c: Received 75 flags 00
Sep 27 13:37:45 chevrolet kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [325706]
Sep 27 13:37:45 chevrolet kernel: atkbd.c: Received 5a flags 00

Hope this helps, even though I doubt. It's only the right-SHIFT causing troubles.

Thanks.

Best regards,
Stian Jordet

#10 lore raw
Quoted 6 lines · Stian Jordet

fre, 2002-09-27 kl. 09:10 skrev Vojtech Pavlik:

Quoted 5 lines

Unfortunately the little bit of information I needed scrolled away already. Can you try with the other shift (right?)? That won't probably crash your machine, but will most likely generate an "Unknown scancode" message. Again, send me the log lines. This time they should make it in the syslog well.

Quoted 8 lines

Ok, the combination which freezes the computer is right SHIFT, and pageup/down, etc. Left SHIFT works just like expected. This time I first wrote 'cp /var/log/syslog /tmp/syslog', then 'echo cut-here > /var/log/syslog' Left-SHIFT+PAGEUP, arrow up two times, to get the cp.., enter. Then I edited /tmp/syslog and copied only what was after "cut-here". So the keystrokes included here should be Left-SHIFT+PAGEUP, ARROW-UP, ARROW-UP, ENTER. If this works like I think it should. As you can see, it did not generate an "Unknown scancode"...

Can you test whether the attached patch helps?

Signature · 2 lines
Vojtech Pavlik
SuSE Labs

You can import this changeset into BK by piping this whole message to:
'| bk receive [path to repository]' or apply the patch as usual. 'bk pull bk://linux-input.bkbits.net/linux-input' should work as well.

===================================================================

[email protected], 2002-10-07 14:29:57+02:00, [email protected]
Fix LAlt-RAlt combination on AT keyboards (generated "unknown scancode" message).

 i8042.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

===================================================================

drivers/input/serio/i8042.c +4 -4
diff -Nru a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c
@@ -63,7 +63,7 @@
 
 extern struct pt_regs *kbd_pt_regs;
 
-static unsigned long i8042_unxlate_seen[128 / BITS_PER_LONG];
+static unsigned long i8042_unxlate_seen[256 / BITS_PER_LONG];
 static unsigned char i8042_unxlate_table[128] = {
 	  0,118, 22, 30, 38, 37, 46, 54, 61, 62, 70, 69, 78, 85,102, 13,
 	 21, 29, 36, 45, 44, 53, 60, 67, 68, 77, 84, 91, 90, 20, 28, 27,
@@ -407,14 +407,14 @@
 		}
 
 		if (data > 0x7f) {
-			if (test_and_clear_bit(data & 0x7f, i8042_unxlate_seen)) {
+			if (test_and_clear_bit((data & 0x7f) | (i8042_last_e0 << 7), i8042_unxlate_seen)) {
 				serio_interrupt(&i8042_kbd_port, 0xf0, dfl);
 				if (i8042_last_e0 && (data == 0xaa || data == 0xb6))
-					set_bit(data & 0x7f, i8042_unxlate_seen);
+					set_bit((data & 0x7f) | (i8042_last_e0 << 7), i8042_unxlate_seen);
 				data = i8042_unxlate_table[data & 0x7f];
 			}
 		} else {
-			set_bit(data, i8042_unxlate_seen);
+			set_bit(data | (i8042_last_e0 << 7), i8042_unxlate_seen);
 			data = i8042_unxlate_table[data];
 		}
 

===================================================================

This BitKeeper patch contains the following changesets:
+
## Wrapped with gzip_uu ##

begin 664 bkpatch491 M'XL(`%9^H3T``[64;6_3,!#'7\>?XK1)J-5H8CM/;5G1'AD3$YNZ[15"E>M< MF]#6F6)G[2?'C<911HPM,$2RXD3YW__N_LIVW"ML>@[M_D7@S(EV_^UZ;O MZ%*C*[_:]3#/[=I+\P5Z][N\\<S+U$UIB'U_(8Q,X18+W7>8ZV^>F+L;[#O# MXY/KL_TA(8,!'*9"3?$2#0P&Q.3%K9@G>D^8=)XKUQ1"Z04:X<I\46VV5IQ2 M;L^0Q3X-HXI%-(@KR1+&1,PH3SH1@$1"1:H9;HWT:XI%VZ"#R08I3'M,9_3 MB@=1-R1'P-R(1T"YQZA'8V!!G_?Z8;Q#>9]2N$]U[[X0L,.@0\D!_%_?AT3" MNVP%9_MSTQG:":S*.%/"9+D"._:O8(9WXUP4B8;6%!46PF"6Z6:J7RI0$NA M9)[@%BQ0:S'%MDL^@,VQ%Y*+GR4GG2<>A%!!R=M-'<PRFV?3U+BE7-IZ5$F1 MK7O><.!9AK+<R[HTX*YL<H^ISW@8L:CR;?5Y%=-UVH))I&;T.1AA?^JN&XA MX[P7\HKWNEU:,_7(1VO*7LP]>89[QKH!8[$%L.<'-8L_(4__B?^N@$+\+? ME9@AF!0!*=P4.+$X9LKD(*3,2V5@F:(">[,.-+=@JBG@RJ!*+(:635WS5C?D M'#K%LAZ6GXO'>O,,'(^B"!@YK6=MK]I3>ELJJP-6X@IU-*C4JVL21QI1/7) M=A\.#B]NAQ=']'9^<?3SZ_(4<!HVNIYN(X3C:!ED%M1D(E(SE'48S&F6FU M$F$$O*ZBB=MJ*#51)@+N]/6:G<7XO;KWX1MM^';.HC?!/&;((ZCT?R;;FT] D;E3C1O6'9BWY)*G-CUJF*&>Z7RZ22S'%`7Y#N\0[,\5!@``
`
end

#11 lore raw

man, 2002-10-07 kl. 15:00 skrev Vojtech Pavlik:

Quoted 16 lines · Stian Jordet
Quoted 6 lines

fre, 2002-09-27 kl. 09:10 skrev Vojtech Pavlik:

Quoted 5 lines

Unfortunately the little bit of information I needed scrolled away already. Can you try with the other shift (right?)? That won't probably crash your machine, but will most likely generate an "Unknown scancode" message. Again, send me the log lines. This time they should make it in the syslog well.

Quoted 8 lines

Ok, the combination which freezes the computer is right SHIFT, and pageup/down, etc. Left SHIFT works just like expected. This time I first wrote 'cp /var/log/syslog /tmp/syslog', then 'echo cut-here > /var/log/syslog' Left-SHIFT+PAGEUP, arrow up two times, to get the cp.., enter. Then I edited /tmp/syslog and copied only what was after "cut-here". So the keystrokes included here should be Left-SHIFT+PAGEUP, ARROW-UP, ARROW-UP, ENTER. If this works like I think it should. As you can see, it did not generate an "Unknown scancode"...

Quoted 1 line

Can you test whether the attached patch helps?

I was starting to think you had forgot me :)

The patch helped a lot. Now it doesn't crash at all. But when I use RIGHT-ALT+PAGE-UP, I get these errors a couple of times, then it suddenly works as it should.

atkbd.c: Unknown key (set 2, scancode 0x1b6, on isa0060/serio0) pressed.
input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.
input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.
input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.
input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.
input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.
input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.

I think the first key is LEFT-SHIFT+PAGE-UP, and the rest the same with right-shift. Anyway, after those first errors, it works perfect. No freeze like before. Thanks :) Great work :)

Best regards,
Stian Jordet

#12 lore raw
Quoted 17 lines · Stian Jordet

man, 2002-10-07 kl. 15:00 skrev Vojtech Pavlik:

Quoted 16 lines · Stian Jordet
Quoted 14 lines

fre, 2002-09-27 kl. 09:10 skrev Vojtech Pavlik:

Quoted 5 lines

Unfortunately the little bit of information I needed scrolled away already. Can you try with the other shift (right?)? That won't probably crash your machine, but will most likely generate an "Unknown scancode" message. Again, send me the log lines. This time they should make it in the syslog well.

Ok, the combination which freezes the computer is right SHIFT, and pageup/down, etc. Left SHIFT works just like expected. This time I first wrote 'cp /var/log/syslog /tmp/syslog', then 'echo cut-here > /var/log/syslog' Left-SHIFT+PAGEUP, arrow up two times, to get the cp.., enter. Then I edited /tmp/syslog and copied only what was after "cut-here". So the keystrokes included here should be Left-SHIFT+PAGEUP, ARROW-UP, ARROW-UP, ENTER. If this works like I think it should. As you can see, it did not generate an "Unknown scancode"...

Quoted 3 lines
Quoted 1 line

Can you test whether the attached patch helps?

I was starting to think you had forgot me :)

In that case you should have reminded me of your problem. I tend to forget when e-mails accumulate beyond a couple hundreds. ;)

Quoted 18 lines

The patch helped a lot. Now it doesn't crash at all. But when I use RIGHT-ALT+PAGE-UP, I get these errors a couple of times, then it suddenly works as it should.

atkbd.c: Unknown key (set 2, scancode 0x1b6, on isa0060/serio0) pressed.
input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.
input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.
input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.
input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.
input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.
input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.

Quoted 3 lines

I think the first key is LEFT-SHIFT+PAGE-UP, and the rest the same with right-shift. Anyway, after those first errors, it works perfect. No freeze like before. Thanks :) Great work :)

I still don't like this behavior - the keyboard shouldn't reinitialize. Can you repeat the same with I8042_DEBUG_IO?

I definitely wasn't able to reproduce this here with very violent bashing at my keyboard. And l/r alt-pageup works here just fine.

Signature · 2 lines
Vojtech Pavlik
SuSE Labs
#13 lore raw

man, 2002-10-07 kl. 22:01 skrev Vojtech Pavlik:

Quoted 1 line · Stian Jordet

[snip]

Quoted 4 lines
Quoted 1 line

I was starting to think you had forgot me :)

In that case you should have reminded me of your problem. I tend to forget when e-mails accumulate beyond a couple hundreds. ;)

I kinda did, in a polite manner. Perhaps I was to polite :)

Quoted 3 lines
Quoted 3 lines

The patch helped a lot. Now it doesn't crash at all. But when I use RIGHT-ALT+PAGE-UP, I get these errors a couple of times, then it suddenly works as it should.

[snip}

Quoted 5 lines

I still don't like this behavior - the keyboard shouldn't reinitialize. Can you repeat the same with I8042_DEBUG_IO?

I definitely wasn't able to reproduce this here with very violent bashing at my keyboard. And l/r alt-pageup works here just fine.

Ok, this is very weird. I tried many times that first boot, and it wouldn't crash what so ever. Ok, it came up with some errors, but I couldn't get it to crash. After a recompile with debug enabled, everything went totally nuts. It didn't crash, but if I pressed S (or what ever key) I would get a screen full of that. Everything was crazy. But still no crash. I rebootet, still same behavior. Then I turned of debugging, and compiled again. And this time it started crashing again (!). I have no idea why, but now it's like it have always been. I have tried several times, used a fresh kerneltree, and patched again, no help. Freezes just like before. I will try some more tomorrow (I'm going to university in five hours), but I really can't understand what have happened.

Thanks anyway for you work :)

Best regards,
Stian Jordet

#14 lore raw
Quoted 33 lines · Stian Jordet

man, 2002-10-07 kl. 22:01 skrev Vojtech Pavlik:

Quoted 1 line · Stian Jordet

[snip]

Quoted 4 lines
Quoted 1 line

I was starting to think you had forgot me :)

In that case you should have reminded me of your problem. I tend to forget when e-mails accumulate beyond a couple hundreds. ;)

I kinda did, in a polite manner. Perhaps I was to polite :)

Quoted 3 lines
Quoted 3 lines

The patch helped a lot. Now it doesn't crash at all. But when I use RIGHT-ALT+PAGE-UP, I get these errors a couple of times, then it suddenly works as it should.

[snip}

Quoted 5 lines

I still don't like this behavior - the keyboard shouldn't reinitialize. Can you repeat the same with I8042_DEBUG_IO?

I definitely wasn't able to reproduce this here with very violent bashing at my keyboard. And l/r alt-pageup works here just fine.

Ok, this is very weird. I tried many times that first boot, and it wouldn't crash what so ever. Ok, it came up with some errors, but I couldn't get it to crash. After a recompile with debug enabled, everything went totally nuts. It didn't crash, but if I pressed S (or what ever key) I would get a screen full of that. Everything was crazy. But still no crash. I rebootet, still same behavior. Then I turned of debugging, and compiled again. And this time it started crashing again (!). I have no idea why, but now it's like it have always been. I have tried several times, used a fresh kerneltree, and patched again, no help. Freezes just like before. I will try some more tomorrow (I'm going to university in five hours), but I really can't understand what have happened.

Quoted 1 line

Thanks anyway for you work :)

I really wonder what your keyboard sends for those keys. To avoid the freeze (and rescanning of the keyboard), you should be able to comment-out these lines in atkbd.c:

         case ATKBD_KEY_BAT:
                 serio_rescan(atkbd->serio);
                 return;
Signature · 2 lines
Vojtech Pavlik
SuSE Labs
#15 lore raw

tir, 2002-10-08 kl. 10:17 skrev Vojtech Pavlik:

Quoted 36 lines · Stian Jordet
Quoted 33 lines

man, 2002-10-07 kl. 22:01 skrev Vojtech Pavlik:

Quoted 1 line · Stian Jordet

[snip]

Quoted 4 lines
Quoted 1 line

I was starting to think you had forgot me :)

In that case you should have reminded me of your problem. I tend to forget when e-mails accumulate beyond a couple hundreds. ;)

I kinda did, in a polite manner. Perhaps I was to polite :)

Quoted 3 lines
Quoted 3 lines

The patch helped a lot. Now it doesn't crash at all. But when I use RIGHT-ALT+PAGE-UP, I get these errors a couple of times, then it suddenly works as it should.

[snip}

Quoted 5 lines

I still don't like this behavior - the keyboard shouldn't reinitialize. Can you repeat the same with I8042_DEBUG_IO?

I definitely wasn't able to reproduce this here with very violent bashing at my keyboard. And l/r alt-pageup works here just fine.

Ok, this is very weird. I tried many times that first boot, and it wouldn't crash what so ever. Ok, it came up with some errors, but I couldn't get it to crash. After a recompile with debug enabled, everything went totally nuts. It didn't crash, but if I pressed S (or what ever key) I would get a screen full of that. Everything was crazy. But still no crash. I rebootet, still same behavior. Then I turned of debugging, and compiled again. And this time it started crashing again (!). I have no idea why, but now it's like it have always been. I have tried several times, used a fresh kerneltree, and patched again, no help. Freezes just like before. I will try some more tomorrow (I'm going to university in five hours), but I really can't understand what have happened.

Quoted 1 line

Thanks anyway for you work :)

Quoted 8 lines

I really wonder what your keyboard sends for those keys. To avoid the freeze (and rescanning of the keyboard), you should be able to comment-out these lines in atkbd.c:

         case ATKBD_KEY_BAT:
                 serio_rescan(atkbd->serio);
                 return;

It didn't help at all. I just tried 2.5.41 instead of .40, and now I get an Oops. Earlier it just froze. Should I write it down?

I'm starting to feel a little embarassed since I'm the only one with this problem. It's not reallt a big deal, I can boot with i8042_direct, and it works fine.

Thanks :)

Best regards,
Stian Jordet

#16 lore raw
Quoted 41 lines · Stian Jordet

tir, 2002-10-08 kl. 10:17 skrev Vojtech Pavlik:

Quoted 40 lines · Stian Jordet
Quoted 33 lines

man, 2002-10-07 kl. 22:01 skrev Vojtech Pavlik:

Quoted 1 line · Stian Jordet

[snip]

Quoted 4 lines
Quoted 1 line

I was starting to think you had forgot me :)

In that case you should have reminded me of your problem. I tend to forget when e-mails accumulate beyond a couple hundreds. ;)

I kinda did, in a polite manner. Perhaps I was to polite :)

Quoted 3 lines
Quoted 3 lines

The patch helped a lot. Now it doesn't crash at all. But when I use RIGHT-ALT+PAGE-UP, I get these errors a couple of times, then it suddenly works as it should.

[snip}

Quoted 5 lines

I still don't like this behavior - the keyboard shouldn't reinitialize. Can you repeat the same with I8042_DEBUG_IO?

I definitely wasn't able to reproduce this here with very violent bashing at my keyboard. And l/r alt-pageup works here just fine.

Ok, this is very weird. I tried many times that first boot, and it wouldn't crash what so ever. Ok, it came up with some errors, but I couldn't get it to crash. After a recompile with debug enabled, everything went totally nuts. It didn't crash, but if I pressed S (or what ever key) I would get a screen full of that. Everything was crazy. But still no crash. I rebootet, still same behavior. Then I turned of debugging, and compiled again. And this time it started crashing again (!). I have no idea why, but now it's like it have always been. I have tried several times, used a fresh kerneltree, and patched again, no help. Freezes just like before. I will try some more tomorrow (I'm going to university in five hours), but I really can't understand what have happened.

Quoted 1 line

Thanks anyway for you work :)

I really wonder what your keyboard sends for those keys. To avoid the freeze (and rescanning of the keyboard), you should be able to comment-out these lines in atkbd.c:

Quoted 6 lines
Quoted 4 lines
         case ATKBD_KEY_BAT:
                 serio_rescan(atkbd->serio);
                 return;

It didn't help at all. I just tried 2.5.41 instead of .40, and now I get an Oops. Earlier it just froze. Should I write it down?

Yes!

Quoted 3 lines

I'm starting to feel a little embarassed since I'm the only one with this problem. It's not reallt a big deal, I can boot with i8042_direct, and it works fine.

Once 2.5 is more public, more people will be bitten by the problem you have, so we need to fix it. Thanks a lot for your cooperation, and please pardon my confusion about who sumbitted which problem, and if I solved it already. :)

Signature · 2 lines
Vojtech Pavlik
SuSE Labs
#17 lore raw

tir, 2002-10-08 kl. 19:25 skrev Vojtech Pavlik:

Quoted 2 lines · Stian Jordet
Quoted 1 line

tir, 2002-10-08 kl. 10:17 skrev Vojtech Pavlik:

[snip]

Quoted 4 lines
Quoted 4 lines
Quoted 4 lines

I really wonder what your keyboard sends for those keys. To avoid the freeze (and rescanning of the keyboard), you should be able to comment-out these lines in atkbd.c:

Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
         case ATKBD_KEY_BAT:
                 serio_rescan(atkbd->serio);
                 return;

It didn't help at all. I just tried 2.5.41 instead of .40, and now I get an Oops. Earlier it just froze. Should I write it down?

Yes!

It won't oops anymore (?) This is really weird, I don't know what I did last night, I was terribly tired, so that must be the reason. .41 and your alt-alt patch, does NOT crash my computer now. No oops, nothing. Attached is a parts of my syslog with debug enabled (and with your alt-alt patch). I logged in, did a echo cut-here >> /var/log/syslog to know what to send you (didn't want everyone at lkml to know my root password, for instance). Then I did this:

Right Shift+Pageup
Right Shift+Pageup
Right Shift+Pagedown
Right Shift+Pagedown
Left Shift+Pageup
Left Shift+Pageup
Left Shift+Pagedown
Left Shift+Pagedown
Right Shift+Pageup
Right Shift+Pageup
Right Shift+Pagedown
Right Shift+Pagedown
Left Shift+Pageup
Left Shift+Pageup
Left Shift+Pagedown
Left Shift+Pagedown

ARROW-UP (to get the echo-line back)
ENTER (to make a new mark in syslog).

What I have attached is what is between those cut-here marks.

When I press the right-shift and Page up, I first get unknown scancode 0x1b6. Then, I'll get 0x1aa on every button I press untill I started to press the left-shift instead. After that, the right shift works like it should. I'm totally confused. But I guess you're better reading the logs than I'm.

Quoted 8 lines
Quoted 3 lines

I'm starting to feel a little embarassed since I'm the only one with this problem. It's not reallt a big deal, I can boot with i8042_direct, and it works fine.

Once 2.5 is more public, more people will be bitten by the problem you have, so we need to fix it. Thanks a lot for your cooperation, and please pardon my confusion about who sumbitted which problem, and if I solved it already. :)

Well, as I'm still the only one with the problem, I'm very, very greatful you're taking the time to try to solve this :) Sorry for the delay.

Best regards,
Stian Jordet

Oct  9 01:23:21 chevrolet kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [30571]
Oct  9 01:23:26 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [35162]
Oct  9 01:23:26 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [35357]
Oct  9 01:23:26 chevrolet kernel: i8042.c: b6 <- i8042 (interrupt, kbd, 1) [35363]
Oct  9 01:23:26 chevrolet kernel: atkbd.c: Unknown key (set 2, scancode 0x1b6, on isa0060/serio0) pressed.
Oct  9 01:23:26 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [35366]
Oct  9 01:23:26 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [35372]
Oct  9 01:23:26 chevrolet kernel: atkbd.c: Unknown key (set 2, scancode 0x1aa, on isa0060/serio0) pressed.
Oct  9 01:23:26 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [35375]
Oct  9 01:23:26 chevrolet kernel: i8042.c: 49 <- i8042 (interrupt, kbd, 1) [35378]
Oct  9 01:23:26 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [35438]
Oct  9 01:23:26 chevrolet kernel: i8042.c: c9 <- i8042 (interrupt, kbd, 1) [35444]
Oct  9 01:23:26 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [35447]
Oct  9 01:23:26 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [35450]
Oct  9 01:23:26 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [35688]
Oct  9 01:23:26 chevrolet kernel: i8042.c: b6 <- i8042 (interrupt, kbd, 1) [35694]
Oct  9 01:23:26 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [35697]
Oct  9 01:23:26 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [35703]
Oct  9 01:23:26 chevrolet kernel: atkbd.c: Unknown key (set 2, scancode 0x1aa, on isa0060/serio0) pressed.
Oct  9 01:23:26 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [35706]
Oct  9 01:23:26 chevrolet kernel: i8042.c: 49 <- i8042 (interrupt, kbd, 1) [35710]
Oct  9 01:23:26 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [35779]
Oct  9 01:23:26 chevrolet kernel: i8042.c: c9 <- i8042 (interrupt, kbd, 1) [35785]
Oct  9 01:23:26 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [35788]
Oct  9 01:23:26 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [35791]
Oct  9 01:23:26 chevrolet kernel: i8042.c: b6 <- i8042 (interrupt, kbd, 1) [35930]
Oct  9 01:23:28 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [37621]
Oct  9 01:23:28 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [37849]
Oct  9 01:23:28 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [37875]
Oct  9 01:23:28 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [37901]
Oct  9 01:23:28 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [37931]
Oct  9 01:23:28 chevrolet kernel: i8042.c: b6 <- i8042 (interrupt, kbd, 1) [37938]
Oct  9 01:23:28 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [37941]
Oct  9 01:23:28 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [37948]
Oct  9 01:23:28 chevrolet kernel: atkbd.c: Unknown key (set 2, scancode 0x1aa, on isa0060/serio0) pressed.
Oct  9 01:23:28 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [37951]
Oct  9 01:23:28 chevrolet kernel: i8042.c: 51 <- i8042 (interrupt, kbd, 1) [37954]
Oct  9 01:23:29 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [38033]
Oct  9 01:23:29 chevrolet kernel: i8042.c: d1 <- i8042 (interrupt, kbd, 1) [38040]
Oct  9 01:23:29 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [38043]
Oct  9 01:23:29 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [38046]
Oct  9 01:23:29 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [38229]
Oct  9 01:23:29 chevrolet kernel: i8042.c: b6 <- i8042 (interrupt, kbd, 1) [38236]
Oct  9 01:23:29 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [38239]
Oct  9 01:23:29 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [38245]
Oct  9 01:23:29 chevrolet kernel: atkbd.c: Unknown key (set 2, scancode 0x1aa, on isa0060/serio0) pressed.
Oct  9 01:23:29 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [38248]
Oct  9 01:23:29 chevrolet kernel: i8042.c: 51 <- i8042 (interrupt, kbd, 1) [38251]
Oct  9 01:23:29 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [38338]
Oct  9 01:23:29 chevrolet kernel: i8042.c: d1 <- i8042 (interrupt, kbd, 1) [38344]
Oct  9 01:23:29 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [38347]
Oct  9 01:23:29 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [38350]
Oct  9 01:23:29 chevrolet kernel: i8042.c: b6 <- i8042 (interrupt, kbd, 1) [38727]
Oct  9 01:23:33 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [42221]
Oct  9 01:23:33 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [42448]
Oct  9 01:23:33 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [42469]
Oct  9 01:23:33 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [42505]
Oct  9 01:23:33 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [42513]
Oct  9 01:23:33 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [42519]
Oct  9 01:23:33 chevrolet kernel: atkbd.c: Unknown key (set 2, scancode 0x1aa, on isa0060/serio0) pressed.
Oct  9 01:23:33 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [42522]
Oct  9 01:23:33 chevrolet kernel: i8042.c: 49 <- i8042 (interrupt, kbd, 1) [42526]
Oct  9 01:23:33 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [42605]
Oct  9 01:23:33 chevrolet kernel: i8042.c: c9 <- i8042 (interrupt, kbd, 1) [42612]
Oct  9 01:23:33 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [42615]
Oct  9 01:23:33 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [42618]
Oct  9 01:23:33 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [42834]
Oct  9 01:23:33 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [42840]
Oct  9 01:23:33 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [42843]
Oct  9 01:23:33 chevrolet kernel: i8042.c: 49 <- i8042 (interrupt, kbd, 1) [42846]
Oct  9 01:23:33 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [42921]
Oct  9 01:23:33 chevrolet kernel: i8042.c: c9 <- i8042 (interrupt, kbd, 1) [42928]
Oct  9 01:23:33 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [42931]
Oct  9 01:23:33 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [42934]
Oct  9 01:23:34 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [43501]
Oct  9 01:23:34 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [43507]
Oct  9 01:23:34 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [43510]
Oct  9 01:23:34 chevrolet kernel: i8042.c: 51 <- i8042 (interrupt, kbd, 1) [43514]
Oct  9 01:23:34 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [43582]
Oct  9 01:23:34 chevrolet kernel: i8042.c: d1 <- i8042 (interrupt, kbd, 1) [43588]
Oct  9 01:23:34 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [43591]
Oct  9 01:23:34 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [43594]
Oct  9 01:23:34 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [43805]
Oct  9 01:23:34 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [43812]
Oct  9 01:23:34 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [43814]
Oct  9 01:23:34 chevrolet kernel: i8042.c: 51 <- i8042 (interrupt, kbd, 1) [43818]
Oct  9 01:23:34 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [43902]
Oct  9 01:23:34 chevrolet kernel: i8042.c: d1 <- i8042 (interrupt, kbd, 1) [43909]
Oct  9 01:23:34 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [43912]
Oct  9 01:23:34 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [43916]
Oct  9 01:23:35 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [44218]
Oct  9 01:23:35 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [44548]
Oct  9 01:23:35 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [44772]
Oct  9 01:23:35 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [44807]
Oct  9 01:23:35 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [44838]
Oct  9 01:23:35 chevrolet kernel: i8042.c: b6 <- i8042 (interrupt, kbd, 1) [44844]
Oct  9 01:23:35 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [44847]
Oct  9 01:23:35 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [44853]
Oct  9 01:23:35 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [44856]
Oct  9 01:23:35 chevrolet kernel: i8042.c: 49 <- i8042 (interrupt, kbd, 1) [44859]
Oct  9 01:23:35 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [44938]
Oct  9 01:23:35 chevrolet kernel: i8042.c: c9 <- i8042 (interrupt, kbd, 1) [44944]
Oct  9 01:23:35 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [44948]
Oct  9 01:23:35 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [44951]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45129]
Oct  9 01:23:36 chevrolet kernel: i8042.c: b6 <- i8042 (interrupt, kbd, 1) [45135]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45138]
Oct  9 01:23:36 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [45144]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45147]
Oct  9 01:23:36 chevrolet kernel: i8042.c: 49 <- i8042 (interrupt, kbd, 1) [45150]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45241]
Oct  9 01:23:36 chevrolet kernel: i8042.c: c9 <- i8042 (interrupt, kbd, 1) [45247]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45250]
Oct  9 01:23:36 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [45253]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45562]
Oct  9 01:23:36 chevrolet kernel: i8042.c: b6 <- i8042 (interrupt, kbd, 1) [45568]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45571]
Oct  9 01:23:36 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [45577]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45580]
Oct  9 01:23:36 chevrolet kernel: i8042.c: 51 <- i8042 (interrupt, kbd, 1) [45583]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45668]
Oct  9 01:23:36 chevrolet kernel: i8042.c: d1 <- i8042 (interrupt, kbd, 1) [45674]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45677]
Oct  9 01:23:36 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [45680]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45837]
Oct  9 01:23:36 chevrolet kernel: i8042.c: b6 <- i8042 (interrupt, kbd, 1) [45844]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45847]
Oct  9 01:23:36 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [45853]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45856]
Oct  9 01:23:36 chevrolet kernel: i8042.c: 51 <- i8042 (interrupt, kbd, 1) [45859]
Oct  9 01:23:36 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45978]
Oct  9 01:23:36 chevrolet kernel: i8042.c: d1 <- i8042 (interrupt, kbd, 1) [45985]
Oct  9 01:23:37 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [45988]
Oct  9 01:23:37 chevrolet kernel: i8042.c: 36 <- i8042 (interrupt, kbd, 1) [45991]
Oct  9 01:23:37 chevrolet kernel: i8042.c: b6 <- i8042 (interrupt, kbd, 1) [46075]
Oct  9 01:23:40 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [49722]
Oct  9 01:23:40 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [49889]
Oct  9 01:23:40 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [49895]
Oct  9 01:23:40 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [49898]
Oct  9 01:23:40 chevrolet kernel: i8042.c: 49 <- i8042 (interrupt, kbd, 1) [49901]
Oct  9 01:23:40 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [49970]
Oct  9 01:23:40 chevrolet kernel: i8042.c: c9 <- i8042 (interrupt, kbd, 1) [49976]
Oct  9 01:23:40 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [49979]
Oct  9 01:23:40 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [49982]
Oct  9 01:23:41 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [50105]
Oct  9 01:23:41 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [50111]
Oct  9 01:23:41 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [50114]
Oct  9 01:23:41 chevrolet kernel: i8042.c: 49 <- i8042 (interrupt, kbd, 1) [50117]
Oct  9 01:23:41 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [50198]
Oct  9 01:23:41 chevrolet kernel: i8042.c: c9 <- i8042 (interrupt, kbd, 1) [50204]
Oct  9 01:23:41 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [50207]
Oct  9 01:23:41 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [50210]
Oct  9 01:23:41 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [50486]
Oct  9 01:23:41 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [50493]
Oct  9 01:23:41 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [50496]
Oct  9 01:23:41 chevrolet kernel: i8042.c: 51 <- i8042 (interrupt, kbd, 1) [50499]
Oct  9 01:23:41 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [50579]
Oct  9 01:23:41 chevrolet kernel: i8042.c: d1 <- i8042 (interrupt, kbd, 1) [50585]
Oct  9 01:23:41 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [50588]
Oct  9 01:23:41 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [50591]
Oct  9 01:23:41 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [50726]
Oct  9 01:23:41 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [50732]
Oct  9 01:23:41 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [50735]
Oct  9 01:23:41 chevrolet kernel: i8042.c: 51 <- i8042 (interrupt, kbd, 1) [50738]
Oct  9 01:23:41 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [50834]
Oct  9 01:23:41 chevrolet kernel: i8042.c: d1 <- i8042 (interrupt, kbd, 1) [50840]
Oct  9 01:23:41 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [50843]
Oct  9 01:23:41 chevrolet kernel: i8042.c: 2a <- i8042 (interrupt, kbd, 1) [50846]
Oct  9 01:23:42 chevrolet kernel: i8042.c: aa <- i8042 (interrupt, kbd, 1) [51344]
Oct  9 01:23:43 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [52184]
Oct  9 01:23:43 chevrolet kernel: i8042.c: 48 <- i8042 (interrupt, kbd, 1) [52187]
Oct  9 01:23:43 chevrolet kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [52283]
Oct  9 01:23:43 chevrolet kernel: i8042.c: c8 <- i8042 (interrupt, kbd, 1) [52290]
Oct  9 01:23:45 chevrolet kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [54255]

A message that is not in the archive (sent off-list or not yet received): [email protected]

#19 lore raw

ons, 2002-10-09 kl. 08:22 skrev Vojtech Pavlik:

Quoted 53 lines · Stian Jordet
Quoted 44 lines

tir, 2002-10-08 kl. 19:25 skrev Vojtech Pavlik:

Quoted 2 lines · Stian Jordet
Quoted 1 line

tir, 2002-10-08 kl. 10:17 skrev Vojtech Pavlik:

[snip]

Quoted 4 lines
Quoted 4 lines
Quoted 4 lines

I really wonder what your keyboard sends for those keys. To avoid the freeze (and rescanning of the keyboard), you should be able to comment-out these lines in atkbd.c:

Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
         case ATKBD_KEY_BAT:
                 serio_rescan(atkbd->serio);
                 return;

It didn't help at all. I just tried 2.5.41 instead of .40, and now I get an Oops. Earlier it just froze. Should I write it down?

Yes!

It won't oops anymore (?) This is really weird, I don't know what I did last night, I was terribly tired, so that must be the reason. .41 and your alt-alt patch, does NOT crash my computer now. No oops, nothing. Attached is a parts of my syslog with debug enabled (and with your alt-alt patch). I logged in, did a echo cut-here >> /var/log/syslog to know what to send you (didn't want everyone at lkml to know my root password, for instance). Then I did this:

Right Shift+Pageup
Right Shift+Pageup
Right Shift+Pagedown
Right Shift+Pagedown
Left Shift+Pageup
Left Shift+Pageup
Left Shift+Pagedown
Left Shift+Pagedown
Right Shift+Pageup
Right Shift+Pageup
Right Shift+Pagedown
Right Shift+Pagedown
Left Shift+Pageup
Left Shift+Pageup
Left Shift+Pagedown
Left Shift+Pagedown

ARROW-UP (to get the echo-line back)
ENTER (to make a new mark in syslog).

Quoted 7 lines

What I have attached is what is between those cut-here marks.

When I press the right-shift and Page up, I first get unknown scancode 0x1b6. Then, I'll get 0x1aa on every button I press untill I started to press the left-shift instead. After that, the right shift works like it should. I'm totally confused. But I guess you're better reading the logs than I'm.

Quoted 8 lines

Thanks a lot for helping me here ....

Quoted 3 lines

Well, as I'm still the only one with the problem, I'm very, very greatful you're taking the time to try to solve this :) Sorry for the delay.

Actually, Linus was the second who was bitten by it. :) And I managed to reproduce it locally yesterday as well, so it's now fixed.

Thank you very, very much. :) It works like a charm now. Maybe I'll get to sleep the next night :) Great work, and I appreciate that you've been taking the time sort this out.

Best regards,
Stian Jordet

#20 lore raw
In reply to Vojtech Pavlik

tir, 2002-10-08 kl. 19:25 skrev Vojtech Pavlik:

Quoted 2 lines · Stian Jordet
Quoted 1 line

tir, 2002-10-08 kl. 10:17 skrev Vojtech Pavlik:

[snip]

Quoted 5 lines
Quoted 5 lines
Quoted 5 lines

I really wonder what your keyboard sends for those keys. To avoid the freeze (and rescanning of the keyboard), you should be able to comment-out these lines in atkbd.c:

Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
         case ATKBD_KEY_BAT:
                 serio_rescan(atkbd->serio);
                 return;

It didn't help at all. I just tried 2.5.41 instead of .40, and now I get an Oops. Earlier it just froze. Should I write it down?

Yes!

*argh* I hate this! Just to doublecheck after I sent you the last mail an hour or so ago, I did a recompile, fresh kernel-tree, just unrar'ed, apply patch (just like I did earlier today), this time it Oopses again. Every time. Earlier today, with same kernel, never any Oops. This is incredibly weird. Anyway, here comes the Oops. I had to write it down by hand, so it _might_ be some errors, but I really don't think so, I did my best, and I even understood my notes when I wrote this textfile :)

Best regards,
Stian Jordet

chevrolet:~#atkbd.c: Unkknown key (set 2, scancode 0x1b6, on isa0060/serio0) pre ssed.
input: AT Set 2 keyboard on isa0060/serio0

Unable to handle kernel NULL pointer dereferenced virtual address 00000004
 printing eip:
c012383f
*pde = 00000000
Oops: 0002
CPU:    0
EIP:    000:[<c012383f>]    Not tainted
EFLAGS: 00010002
eax: 00000000   ebx: c046ba80   ecx: c17f5298   edx: 00000000
esi: c042e000   edi: c17f5200   ebp: c02ac088   esp: c042ff3c
ds: 0068   es: 0068   ss: 0068
Process swapper (pid: 0, threadinfo=c042e000 task=c03dbec0)
Stack: c1506148 00000000 c042e000 00000001 00000246 c0120385 00000000 00000001
       c046b960 fffffffe 00000000 c04503e4 c04503e4 c012008a c046b960 00000000
       00000000 00000000 0008e000 00000046 c011278d c042e000 c0105320 c0105000
Call Trace: [<c0120385>]  [<c012008a>]  [<c011278d>]  [<c0105320>]  [<c0105000>]
  [<c0107be2>]  [<c01053207>]  [<c0105000>]  [<c0105349>]  [<c01053d3>]  [<c01050
55>]
Code: 89 50 04 89 02 c7 41 14 00 00 00 00 89 4b 08 c6 03 01 fb ff
#21 lore raw
In reply to Vojtech Pavlik

fre, 2002-09-27 kl. 09:10 skrev Vojtech Pavlik:

Quoted 5 lines

Unfortunately the little bit of information I needed scrolled away already. Can you try with the other shift (right?)? That won't probably crash your machine, but will most likely generate an "Unknown scancode" message. Again, send me the log lines. This time they should make it in the syslog well.

I guess this didn't help you either. But this night I got a bright idea, or so I think, atleast. I'm actually using a KVM-switch, which I ofcourse should have told you earlier, but it wasn't in my mind at all. When not using the KVM switch, I get this message:

input: AT Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key (set 2, scancode 0x1c9, on isa0060/serio0) pressed.

Will this help?

Thanks.

Best regards,
Stian Jordet