Messages in this thread | | | Date | Thu, 15 Feb 2001 00:31:37 -0500 (EST) | From | Ivan Borissov Ganev <> | Subject | Re: [BUG] 2.4.[01] lockups |
| |
On Sun, 11 Feb 2001, Pavel Machek wrote:
> Login via network or serial cable, and see if /proc/interrupts entry > for keyboard/mouse changes as you type. Attempt to blink keyboard leds > with setleds. > Pavel
On Mon, 12 Feb 2001, Ville Herva wrote:
> Also, try killing gpm. > -- v --
Hello,
Thanks for the suggestions. Due to lack of a terminal or second computer I've had no chance still to try the above suggestions. However, I have tried many different versions of the 2.4.X series to no avail. I tried to compile out APIC/IO-APIC stuff, I tried Alan's ac9 patches, etc.
However, I recently noticed that most times the console freezes when I am doing a filename completion (which involves a beep when the completion is not unique in KDE). I have changed the beep to be much shorter and with much less annoying pitch from the KDE control panel.
I have found out that going in the control panel and just clicking the "Test" button to test out the beep would freeze the console in less than 10-15 tries.
I got the sources for "kcontrol" and it seems the beeping is done from some function of the keyboard driver, although I do not understand KDE much and have no idea how to continue tracing the bug further.
Currently I have set the pitch to 0 Hz (no beeping) and have not had a lockup yet. I will continue testing, however, if someone can give me a suggestion how to go about tracing the code that actually does the beeping (be it in KDE or the kernel) I'd be very grateful.
Cheers, --Ivan
P.S. The relevant code from kdebase-2.0.1/kcontrol/bell/bell.cpp is:
void KBellConfig::ringBell() { // store the old state XKeyboardState old_state; XGetKeyboardControl(kapp->getDisplay(), &old_state);
// switch to the test state XKeyboardControl kbd; kbd.bell_percent = m_volume->value(); kbd.bell_pitch = m_pitch->value(); if (m_volume->value() > 0) kbd.bell_duration = m_duration->value(); else kbd.bell_duration = 0; XChangeKeyboardControl(kapp->getDisplay(), KBBellPercent | KBBellPitch | KBBellDuration, &kbd); // ring bell XBell(kapp->getDisplay(),100);
// restore old state kbd.bell_percent = old_state.bell_percent; kbd.bell_pitch = old_state.bell_pitch; kbd.bell_duration = old_state.bell_duration; XChangeKeyboardControl(kapp->getDisplay(), KBBellPercent | KBBellPitch | KBBellDuration, &kbd); }
------------------------------------------------------------------------------ Ivan Ganev 327236 Georgia Tech Station College of Computing Atlanta, GA 30332 Georgia Institute of Technology 1-(404)-365-8694 ganev@cc.gatech.edu http://www.cc.gatech.edu/~ganev ------------------------------------------------------------------------------ Learning is not compulsory. Neither is survival. -- W. Edwards Deming
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |