1 |
Am Samstag, 27. Dezember 2008 16:48:19 schrieb Harry Putnam: |
2 |
|
3 |
> > Dirk Heinrichs <dirk.heinrichs@××××××.de> writes: |
4 |
> > |
5 |
> > What could help you here is a "make xconfig". It's similar to "make |
6 |
> > menuconfig" but has a nice QT user interface. I would recommend to |
7 |
> > browse through it once and look at the help texts which are shown in |
8 |
> > the lower right pane for each option you klick. Based on this |
9 |
> > information, you can then decide wether or not to enable that option |
10 |
> > or even compile it as module. |
11 |
> |
12 |
> I have looked at that before but didn't think it was any better than |
13 |
> `menuconfig' and the '/' help tool. |
14 |
|
15 |
The difference is that you see the help texts right away, which is just handy |
16 |
compared to menuconfig. |
17 |
|
18 |
> Many times the help provided doesn't really explain what a given |
19 |
> setting does. In fact in most cases it does not. |
20 |
|
21 |
Yes, you're right. There's always room for improvement. But sometimes it also |
22 |
points you to some additional information, like "See |
23 |
Documentation/scheduler/sched-rt-group.txt for more information.". |
24 |
|
25 |
> What is really aggravating is that it doesn't even really tell you |
26 |
> what exact thing in .config is being set with the various hundreds of |
27 |
> options. I mean when you do set something, you don't really get to see |
28 |
> what is being set inside of .config. |
29 |
|
30 |
This is simply false. In xconfig, the help text has it in the title (in |
31 |
parentesis, just add a "CONFIG_" prefix). In menuconfig, it's the first line |
32 |
of the help text. |
33 |
|
34 |
> I don't have X running currently so its a mute point, but is the help |
35 |
> provided in xconfig and different than that available in `menuconfig'? |
36 |
|
37 |
The text itself is the same. However, menuconfig gives a bit more details, for |
38 |
example where to find it in the menu and its dependencies. |
39 |
|
40 |
> >> Details: |
41 |
> >> I'm at a point where any pared down kernel config I've built and |
42 |
> >> tried has some terrible thing wrong with it. Usually involving udev |
43 |
> >> and openrc someway or other... things not getting started or |
44 |
> >> mounted etc etc. |
45 |
> > |
46 |
> > With udev, those things usually work automatically. However, you |
47 |
> > must make sure that everything needed for accessing the root |
48 |
> > filesystem must be compiled into the kernel. That usually includes |
49 |
> > the driver for the chipset that operates your harddisks, harddisk |
50 |
> > support and the filesystem used for /. |
51 |
> > |
52 |
> >> I'd think there would be some kind of cross reference somewhere that |
53 |
> >> would connect module names to what they do, and what .config options |
54 |
> >> are associated. |
55 |
> > |
56 |
> > I don't know of any. But in most cases, the module name is listed in |
57 |
> > the help text. |
58 |
> > |
59 |
> >> Another path is to find the *.ko names in /lib/modules and use the |
60 |
> >> absolute name to track them down in the kernel sources where there is |
61 |
> >> usually a README of some sort in the tree leading to the *.ko. |
62 |
> > |
63 |
> > Somtimes, you can also simply guess by module name, for example: |
64 |
> > joydev.ko -> Joy(stick)Dev(ice). |
65 |
> > |
66 |
> >> But my god what a slow and painful way to find out what these |
67 |
> >> modules do. |
68 |
> > |
69 |
> > Yes, that's true. The browsing method may give you a rough overview |
70 |
> > within an hour or two. |
71 |
> > |
72 |
> >> Just rmmod is another way but again a very slow and painful way. |
73 |
> >> Maybe a module is used only occasionally and rmmodding may not show |
74 |
> >> what it was for right away. What ever fails may not happen |
75 |
> >> immediately. |
76 |
> > |
77 |
> > Or try modprobe + dmesg instead. Usually a driver module tells |
78 |
> > wether it has found some pice of supported hardware or not. |
79 |
> |
80 |
> Now that is a good piece of advice there... I did notice that rmmoding |
81 |
> and modprobing can give you more info than you expect if you hit |
82 |
> something that the module latches onto. |
83 |
> |
84 |
> I'm finding somewhat rough sledding in dmesg too. I find the ethernet |
85 |
> stuff with no problem and, by now, know what I need there. |
86 |
> |
87 |
> My hardware is pretty common stuff, not even any sata discs, all ata. |
88 |
> and I'm still not sure which driver is needed there. |
89 |
|
90 |
It all comes down to three things: Chipset driver, harddisk support and |
91 |
filesystem used on /. The chipset you'll get from "lspci -v", best used from a |
92 |
LiveCD. Look for "Ide interface" and "Sata controller". The rest is |
93 |
CONFIG_BLK_DEV_SD and your filesystem. |
94 |
|
95 |
> On the last attempted kernel, I just went menuconfig on a copy of the |
96 |
> genkernel .config and turned off a number of things I was pretty sure |
97 |
> didn't apply to me (all wireless for example) or anything but ethernet |
98 |
> under the network section. All firmware turned off. |
99 |
> Stuff I've never needed before. |
100 |
> |
101 |
> Every thing mounted but still no network was started or any of the |
102 |
> stuff listed in `rc-update show'. |
103 |
|
104 |
Some things are twofold. Network is one of those. Under "Networking support", |
105 |
you define the functionalities of your network interface(s). But only under |
106 |
"Device Drivers" -> "Network Device Support" you'll find the drivers for your |
107 |
actual hardware. You always need both. Which driver you need you'll get again |
108 |
from "lspci -v". |
109 |
|
110 |
> I was dumped out into a root shell where I was able to modprobe and |
111 |
> '/etc/init.d/bla start' my way into a fully running system. |
112 |
> |
113 |
> So the stuff was there but something (I suspect udev) blocked it |
114 |
> starting up like it should. |
115 |
|
116 |
You mentioned openrc in your first mail. Are you already using 0.4.x? If so, |
117 |
you should mask >=0.4.0, it seems it has some problems getting the boot order |
118 |
right. |
119 |
|
120 |
HTH... |
121 |
|
122 |
Dirk |