Gentoo Archives: gentoo-user

From: Dirk Heinrichs <dirk.heinrichs@××××××.de>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Re: kernel config hell
Date: Sun, 28 Dec 2008 09:22:54
Message-Id: 200812281022.48531.dirk.heinrichs@online.de
In Reply to: [gentoo-user] Re: kernel config hell by Harry Putnam
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

Attachments

File name MIME type
signature.asc application/pgp-signature