SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
When LILO starts I ALWAYS can hit Enter to skip the default waiting time but when it arrives to runlevel 3 (by default) sometimes (4/10) keyboard is dead so I have to restart.
I have been googling around and I've found some threads similiar to this but not exactly equals so I can't fix the problem.
Sorry but a Dell Vostro 1510 is a laptop, so no USB kbd plugged. Moreover, if you read again my 1st post you'll see that when LILO boots, I ALWAYS can press ENTER, so the problem/s come later.
Last edited by morphynoman; 11-20-2008 at 02:18 AM.
Sorry about that, when I wrote that I was in a hurry and didn't read your post very carefully (I actually missed several important points). Since the keyboard only goes dead *sometimes*, it is possible that there is a module conflict. You should post the output of `lsmod` when the keyboard is working (and I realize you can't exactly post that when the keyboard isn't working, unfortunately). Which kernel are you using (huge, generic, huge-smp or generic-smp)? The generic-smp kernel is definitely recommended (note that you need to create an initrd to use the generic-smp kernel -- see /boot/README.initrd).
It would help to have the `lsmod` output when the keyboard isn't working as well. The only thing I can think of is to add the following line to /etc/rc.d/rc.local (create the file if it doesn't exist, and make sure it is executable):
Code:
echo NEW BOOT >> /path/to/lsmodoutput.txt
lsmod >> /path/to/lsmodoutput.txt
That would create small log file for you, just containing the lsmod output from each boot (with the lsmod output from each boot separated by a "NEW BOOT" line). When the keyboard doesn't work, hopefully the lsmod output will still be appended to that file. Upon the next boot, hopefully the keyboard IS working and the last two entries will show the not-working and the working lsmod output, in that order.
That may not be the problem, but I can't really think of anything else right now (and I am still pressed for time as I write this reply).
Dear T3slider, your comment was very acute as the difference between a correct boot sequence and a bad one is the loading of 'serio_raw' module, that curiously is in
Now, if the problem is summarized that the module is loaded, why is loaded sometimes and sometimes not? and, even more, how could I ensure that it loads at boot?
PD: Why does it load when I press repeatedly any key while booting?
The serio_raw module should hopefully be present in /lib/modules/2.6.21.5-smp/kernel/drivers/input/serio/serio_raw.ko as well, since you're using the SMP kernel. Otherwise, you won't be able to modprobe it successfully. There are a few possible ways to load the module, and they're all a bit hackish. I will describe a possible method that attempts to avoid trying to load the module twice (so you won't have an annoying error in `dmesg` output all the time). Add the following line to the end of /etc/modprobe.d/blacklist:
Code:
blacklist serio_raw
Then, add this to the end of /etc/rc.d/rc.modules-2.6.21.5-smp:
Code:
/sbin/modprobe serio_raw
Note that I'm assuming rc.module-2.6.21.5-smp is the one getting checked. rc.S runs the first file it finds, looking in this order:
rc.modules.local
rc.modules-$(uname -r)
rc.modules
Therefore, if you have an rc.modules.local file, you should edit that instead (though since you're using a Slackware default kernel, you should probably just use rc.modules-2.6.21.5-smp instead of creating an rc.modules.local file).
This is really just a hack, and I'm not knowledgeable enough to determine *why* the module isn't being loaded by udev. If anyone else knows more, feel free to chime in.
Blacklisting serio_raw and adding the load command for that module seems to work fine. If something goes wrong I'll report here. Anyway thanks again in special to you T3slider.
Last edited by morphynoman; 11-22-2008 at 09:29 PM.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.