1 |
.. and that problem is, in short, that the rebuild unmerges the previous |
2 |
version, in the currently-running (or previous) kernel modules folder, |
3 |
breaking the previous kernel. |
4 |
|
5 |
And my question is, how to get it to stop doing that. If Portage has a |
6 |
FEATURES setting that prevents the previous version being unmerged this |
7 |
way, I don't know what it is..... |
8 |
|
9 |
Example: |
10 |
|
11 |
I'm currently using 2.6.13-gentoo-r4, and am compiling 2.6.14-gentoo. |
12 |
|
13 |
/usr/src/linux points to 2.6.14-gentoo. |
14 |
|
15 |
module-rebuild rebuild |
16 |
** Preparing to merge modules: |
17 |
** Packages which I will emerge are: |
18 |
=sys-fs/submount-0.9-r2 |
19 |
=media-libs/svgalib-1.9.23 |
20 |
=media-video/ati-drivers-8.18.8-r1 |
21 |
|
22 |
Now, taking the "most important" of these modules, let's look at what |
23 |
happens with ati-drivers (it's "most important" because X is set to |
24 |
use it, and naturally X won't start if the driver is not found). |
25 |
|
26 |
|>> emerge (3 of 3) media-video/ati-drivers-8.18.8-r1 to / |
27 |
<snip> |
28 |
* Determining the location of the kernel source code |
29 |
* Found kernel source directory: |
30 |
* /usr/src/linux |
31 |
* Found sources for kernel version: |
32 |
* 2.6.14-gentoo |
33 |
* Checking for MTRR support enabled ... |
34 |
|
35 |
[ ok ] |
36 |
* Checking for AGP support enabled ... |
37 |
|
38 |
[ ok ] |
39 |
* Checking for DRM support disabled ... |
40 |
|
41 |
[ ok ] |
42 |
* X11 implementation is xorg-x11. |
43 |
|
44 |
So, the drivers are going to compile against 2.6.14, which is what I |
45 |
want, and correct. So far so good. |
46 |
|
47 |
| >>> Unpacking source... |
48 |
* Unpacking Ati drivers ... [ ok ] |
49 |
* Applying fglrx-2.6.14-access_ok.patch ... [ ok ] |
50 |
|>>> Source unpacked. |
51 |
* Building the DRM module... |
52 |
make: Entering directory `/usr/src/linux-2.6.14-gentoo' |
53 |
<snip> |
54 |
make: Leaving directory `/usr/src/linux-2.6.14-gentoo' |
55 |
|>>> Test phase [not enabled]: media-video/ati-drivers-8.18.8-r1 |
56 |
|
57 |
|>>> Install ati-drivers-8.18.8-r1 into |
58 |
/var/tmp/portage/ati-drivers-8.18.8-r1/image/ category media-video |
59 |
* Installing fglrx module |
60 |
<snip> |
61 |
--- /lib/modules/ |
62 |
--- /lib/modules/2.6.14-gentoo/ |
63 |
--- /lib/modules/2.6.14-gentoo/video/ |
64 |
|>>> /lib/modules/2.6.14-gentoo/video/fglrx.ko |
65 |
<snip> |
66 |
|>>> /usr/lib/opengl/ati/lib/libGL.so.1 -> libGL.so.1.2 |
67 |
|
68 |
And the drivers build and install fine... then this: |
69 |
|
70 |
|>>> Safely unmerging already-installed instance... |
71 |
<snip> |
72 |
==>--- cfgpro obj /lib/modules/2.6.13-gentoo-r4/video/fglrx.ko |
73 |
==>--- cfgpro dir /lib/modules/2.6.13-gentoo-r4/video |
74 |
==>--- cfgpro dir /lib/modules/2.6.13-gentoo-r4 |
75 |
<snip> |
76 |
Switching to ati OpenGL interface... done |
77 |
|>>> original instance of package unmerged safely. |
78 |
Switching to ati OpenGL interface... done |
79 |
|
80 |
So the rebuild process has *removed* the kernel modules for what will be |
81 |
the previous kernel when I reboot--- and if my new kernel doesn't boot, |
82 |
well neither will my previous one, depending on how critical the modules |
83 |
are (in this case, I just won't have X, but depending on one's setup, |
84 |
one might have lost something really necessary). |
85 |
|
86 |
In any case this is really not correct behaviour (I want both the |
87 |
currently-running kernel module and the future-kernel module to be |
88 |
installed). |
89 |
|
90 |
The only way I can see to avoid this is to step through the emerges with |
91 |
the 'ebuild' command, stopping after 'install', and not performing |
92 |
'postinst' or 'unmerge' (whichever one is performed at the end to remove |
93 |
the previously-existing package). |
94 |
|
95 |
I don't see SLOTs as being precisely appropriate, but I don't see what |
96 |
other method *might* resolve this, since the previously-installed |
97 |
package is in this case (in most cases?) *not* the same as the |
98 |
re-emerged package, because they are compiled against different kernels. |
99 |
|
100 |
Is there a way to SLOT external kernel modules against the kernel |
101 |
version it's being compiled against? |
102 |
|
103 |
This seems to definitely be a bug, but I have not the first clue how to |
104 |
submit it, nor what against.... |
105 |
|
106 |
....help, help, help.... and hope 2.6.14 works, because if it doesn't, |
107 |
I've got no modules for my previous kernel.... |
108 |
|
109 |
Holly |
110 |
-- |
111 |
gentoo-user@g.o mailing list |