1 |
Nadav Horesh posted on Wed, 16 Dec 2009 20:34:22 +0200 as excerpted: |
2 |
|
3 |
> I recently upgraded from 2.6.23 to 2.6.31-r6 following the udev upgrade |
4 |
> (the latest version - 146-r1 needs kernel version >= 2.6.25). Since the |
5 |
> upgrade the frequency scaling modules fails to load at startup, but I |
6 |
> can load it manually later |
7 |
|
8 |
I don't have that hardware, but have you tried compiling the required |
9 |
drivers /into/ the kernel instead of as modules? |
10 |
|
11 |
FWIW, while I realize this won't fit everyone's situation, I recently |
12 |
decided it was less hassle here to simply compile everything into the |
13 |
kernel, and turn off module loading entirely. What triggered that |
14 |
decision here, was that I have separate /boot and / partitions, with a |
15 |
separate backup / partition as well. As I updated my kernel, the new |
16 |
kernels would show up in /boot and the new modules in the usual place on |
17 |
my working / at /lib/modules/<kern_ver>/, but they'd not get added to the |
18 |
backup / partition, which after all remains unmounted most of the time. |
19 |
|
20 |
When I need to boot from the backup for whatever reason, a simple change |
21 |
to grub's kernel line, adding or changing the root= to point to the |
22 |
backup instead of the usual working /, boots the backup. The problem is |
23 |
that then, I had to remember which kernels I had bothered to copy the |
24 |
modules dirs over to the backup, and which I hadn't. |
25 |
|
26 |
Since I already had the main system all builtin, thus avoiding the hassle |
27 |
of an initramfs/initrd, and it was only "extra" modules like loopback and |
28 |
floppy that were actually built as modules, for some time, I just ignored |
29 |
the problem (while making sure I copied at least the modules from the |
30 |
first release kernel in a series over, the 2.6.x kernel modules), since I |
31 |
wasn't normally after extras when booting to backup anyway. But I got |
32 |
tired of doing even the one set manually, and rather than create a script |
33 |
to automate the process, I decided it was simpler to just build the few |
34 |
remaining modules in. Yes, it takes a few more KB of "locked" kernel |
35 |
memory that can't swap, but the floppy module, for instance, was being |
36 |
loaded automatically anyway, and I never unloaded it, and with multiple |
37 |
gigs of RAM, I decided the few KB extra wasn't going to kill me, |
38 |
especially since that meant everything I needed was now in just ONE file, |
39 |
the kernel itself! |
40 |
|
41 |
Now, some people load the modules so they can feed in special module |
42 |
parameters when the do so. However, for at least some kernel modules, |
43 |
it's possible to feed those in on grub's kernel command line as well -- |
44 |
or, if they don't change, from 2.6.30 or 2.6.31 (IDR which), it's now |
45 |
possible to build-in a portion of the kernel command line at compile |
46 |
time, as well, thus significantly shortening the grub commandline to only |
47 |
the kernel filename and any dynamic parameters, such as the root= |
48 |
parameter I use to point to my backup when mounting it (and even those |
49 |
can have defaults built-in, so you only need to add it to the kernel |
50 |
command line if you're changing from the default for some reason). |
51 |
|
52 |
For instance, the radeon module has the modeset= option (in kernels with |
53 |
radeon kms enabled, 2.6.31 for radeons r500 and earlier, 2.6.32 thru the |
54 |
r700 series). When it's builtin, you can feed that option to the kernel |
55 |
as radeon.modeset= , either from grub, or built-in. (Of course, since |
56 |
that's a binary 0/1 option with a definite default and a kernel option to |
57 |
change that default already, there'd be little reason to build that |
58 |
particular one into the kernel at compile time, but it's possible. More |
59 |
practical would be to always have it in grub.conf, and just edit the |
60 |
kernel command line from grub at boot and change the single digit, from a |
61 |
0 to a 1 or 1 to 0, as appropriate.) |
62 |
|
63 |
Just something I'm throwing out there in case someone finds it useful. |
64 |
YMMV, etc... |
65 |
|
66 |
-- |
67 |
Duncan - List replies preferred. No HTML msgs. |
68 |
"Every nonfree program has a lord, a master -- |
69 |
and if you use the program, he is your master." Richard Stallman |