Speaking of kernel questions...
Jason Clinton
me at jasonclinton.com
Mon May 5 17:05:41 CDT 2003
I solved some interesting problems revolving around the kernel and my
Gentoo system this weekend. I'll post some quick notes here in case
anyone is interested:
1. ALSA was loading itself up before the ALSA init script started.
This caused mixer settings to not be restored in versions through
0.9.3a. This problem was caused by this in modules.d/alsa:
## OSS/Free portion
alias sound-slot-0 snd-card-0
##alias sound-slot-1 snd-card-1
In combination with the kernel modules autoloader, this created a
virtual device link that the kernel interpreted as something that
was just Hot-plugged for which the modules should be automatically
loaded. All I did was comment out that line, run update-modules,
and then I was back in business.
There is a danger that some OSS emulation might be affected by
this; thus far, I haven't seen any problems. Dolby surround sound
is working beautifully in Warcraft 3 on WineX 3.
2. In connection with the kernel module autoloader, I also discovered
that dependencies are automatically solved for most modules. My
/etc/modules.autoload used to contain about 20 lines of modules I
needed to load at boot. Now, instead, it contains one entry for
each device. For instance, for a USB Mouse, first, UCHI is loaded
to address the host controller for the USB hub. This invokes
usb-core.o as a dependency. Then USB Mouse is loaded, which in
turn grabs HID and INPUT as dependencies. So, as a rule of thumb,
you should only target module loaded for the specific device;
everything else is automatic. I also got my USB Flash Drive to
autoload it's modules on boot using Hot-plug support.
3. I've enabled a VESA framebuffered kernel with a nice JPG
background and a bootsplash screen with a giant penguin on it and
the ability to browse the internet in graphics mode at the console
through the use of this thread
<http://forums.gentoo.org/viewtopic.php?t=49036> on the Gentoo
forums. I learned a lot of interesting things about framebuffers
and initrd. Interestingly, the radeonfb driver is less mature than
the VESA driver.
--
Jason Clinton
I don't believe in witty sigs.
More information about the Kclug
mailing list