/[gentoo]/xml/htdocs/doc/en/handbook/hb-install-x86+amd64-kernel.xml
Gentoo

Diff of /xml/htdocs/doc/en/handbook/hb-install-x86+amd64-kernel.xml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.17 Revision 1.25
2<!DOCTYPE sections SYSTEM "/dtd/book.dtd"> 2<!DOCTYPE sections SYSTEM "/dtd/book.dtd">
3 3
4<!-- The content of this document is licensed under the CC-BY-SA license --> 4<!-- The content of this document is licensed under the CC-BY-SA license -->
5<!-- See http://creativecommons.org/licenses/by-sa/2.5 --> 5<!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
6 6
7<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-x86+amd64-kernel.xml,v 1.17 2007/08/13 03:31:27 nightmorph Exp $ --> 7<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-x86+amd64-kernel.xml,v 1.25 2008/05/19 09:10:06 nightmorph Exp $ -->
8 8
9<sections> 9<sections>
10 10
11<abstract> 11<abstract>
12The Linux kernel is the core of every distribution. This chapter 12The Linux kernel is the core of every distribution. This chapter
13explains how to configure your kernel. 13explains how to configure your kernel.
14</abstract> 14</abstract>
15 15
16<version>5.4</version> 16<version>6.3</version>
17<date>2007-08-12</date> 17<date>2008-05-19</date>
18 18
19<section> 19<section>
20<title>Timezone</title> 20<title>Timezone</title>
21<body> 21<body>
22 22
49users several possible kernel sources. A full listing with description is 49users several possible kernel sources. A full listing with description is
50available at the <uri link="/doc/en/gentoo-kernel.xml">Gentoo Kernel 50available at the <uri link="/doc/en/gentoo-kernel.xml">Gentoo Kernel
51Guide</uri>. 51Guide</uri>.
52</p> 52</p>
53 53
54<p test="func:keyval('arch')='x86'">
55For x86-based systems we have, amongst other kernels, <c>gentoo-sources</c>
56(kernel source patched with performance-enhancing features).
57</p> 54<p>
58 55For <keyval id="arch"/>-based systems we have <c>gentoo-sources</c>
59<p test="func:keyval('arch')='AMD64'"> 56(kernel source patched for extra features).
60For AMD64-based systems we have <c>gentoo-sources</c> (kernel source patched
61with amd64 specific fixes for stability, performance and hardware support).
62</p> 57</p>
63 58
64<p> 59<p>
65Choose your kernel source and install it using <c>emerge</c>. 60Choose your kernel source and install it using <c>emerge</c>.
66</p> 61</p>
143<subsection> 138<subsection>
144<title>Activating Required Options</title> 139<title>Activating Required Options</title>
145<body> 140<body>
146 141
147<p> 142<p>
148First of all, activate the use of development and experimental code/drivers.
149You need this, otherwise some very important code/drivers won't show up:
150</p>
151
152<pre caption="Selecting experimental code/drivers">
153Code maturity level options ---&gt;
154 [*] Prompt for development and/or incomplete code/drivers
155</pre>
156
157<p>
158Make sure that every driver that is vital to the booting of your system (such as 143Make sure that every driver that is vital to the booting of your system (such as
159SCSI controller, ...) is compiled <e>in</e> the kernel and not as a module, 144SCSI controller, ...) is compiled <e>in</e> the kernel and not as a module,
160otherwise your system will not be able to boot completely. 145otherwise your system will not be able to boot completely.
161</p> 146</p>
162 147
166<p> 151<p>
167We shall then select the exact processor type. The x86_64 kernel maintainer 152We shall then select the exact processor type. The x86_64 kernel maintainer
168strongly recommends users enable MCE features so that they are able to be 153strongly recommends users enable MCE features so that they are able to be
169notified of any hardware problems. On x86_64, these errors are not printed to 154notified of any hardware problems. On x86_64, these errors are not printed to
170<c>dmesg</c> like on other architectures, but to <path>/dev/mcelog</path>. This 155<c>dmesg</c> like on other architectures, but to <path>/dev/mcelog</path>. This
171requires the <c>app-admin/mcelog</c> package. 156requires the <c>app-admin/mcelog</c> package. Make sure you select IA32
157Emulation if you want to be able to run 32-bit programs. Gentoo will install a
158multilib system (mixed 32-bit/64-bit computing) by default, so you probably
159want this option.
172</p> 160</p>
173 161
174<pre caption="Selecting processor type and features"> 162<pre caption="Selecting processor type and features">
175Processor type and features ---> 163Processor type and features --->
176 [ ] Intel MCE Features 164 [ ] Intel MCE Features
177 [ ] AMD MCE Features 165 [ ] AMD MCE Features
178 Processor family (AMD-Opteron/Athlon64) ---> 166 Processor family (AMD-Opteron/Athlon64) --->
179 ( ) AMD-Opteron/Athlon64 167 ( ) AMD-Opteron/Athlon64
180 ( ) Intel EM64T 168 ( ) Intel EM64T
181 ( ) Generic-x86-64 169 ( ) Generic-x86-64
170Executable file formats / Emulations --->
171 [*] IA32 Emulation
182</pre> 172</pre>
183 173
184</body> 174</body>
185<body test="func:keyval('arch')='x86'"> 175<body test="func:keyval('arch')='x86'">
186 176
201Now go to <c>File Systems</c> and select support for the filesystems you use. 191Now go to <c>File Systems</c> and select support for the filesystems you use.
202<e>Don't</e> compile them as modules, otherwise your Gentoo system will not be 192<e>Don't</e> compile them as modules, otherwise your Gentoo system will not be
203able to mount your partitions. Also select <c>Virtual memory</c> and <c>/proc 193able to mount your partitions. Also select <c>Virtual memory</c> and <c>/proc
204file system</c>. 194file system</c>.
205</p> 195</p>
206
207</body>
208<body test="func:keyval('arch')='x86'">
209 196
210<pre caption="Selecting necessary file systems"> 197<pre caption="Selecting necessary file systems">
211File systems ---&gt; 198File systems ---&gt;
212 Pseudo Filesystems ---&gt; 199 Pseudo Filesystems ---&gt;
213 [*] /proc file system support 200 [*] /proc file system support
219 &lt;*&gt; JFS filesystem support 206 &lt;*&gt; JFS filesystem support
220 &lt;*&gt; Second extended fs support 207 &lt;*&gt; Second extended fs support
221 &lt;*&gt; XFS filesystem support 208 &lt;*&gt; XFS filesystem support
222</pre> 209</pre>
223 210
224</body>
225<body test="func:keyval('arch')='AMD64'">
226
227<pre caption="Selecting necessary file systems">
228File systems ---&gt;
229 Pseudo Filesystems ---&gt;
230 [*] /proc file system support
231 [*] Virtual memory file system support (former shm fs)
232
233<comment>(Select one or more of the following options as needed by your system)</comment>
234 &lt;*&gt; Reiserfs support
235 &lt;*&gt; Ext3 journalling file system support
236 &lt;*&gt; JFS filesystem support
237 &lt;*&gt; Second extended fs support
238 &lt;*&gt; XFS filesystem support
239</pre>
240
241</body>
242<body>
243
244<p>
245Do not forget to enable DMA for your drives:
246</p>
247
248<pre caption="Activating DMA">
249Device Drivers ---&gt;
250 ATA/ATAPI/MFM/RLL support ---&gt;
251 [*] Generic PCI bus-master DMA support
252</pre>
253
254<p> 211<p>
255If you are using PPPoE to connect to the Internet or you are using a dial-up 212If you are using PPPoE to connect to the Internet or you are using a dial-up
256modem, you will need the following options in the kernel: 213modem, you will need the following options in the kernel:
257</p> 214</p>
258 215
259<pre caption="Selecting PPPoE necessary drivers" test="func:keyval('arch')='AMD64'"> 216<pre caption="Selecting PPPoE necessary drivers">
260Device Drivers ---&gt; 217Device Drivers ---&gt;
261 Networking Support ---&gt; 218 Networking Support ---&gt;
262 &lt;*&gt; PPP (point-to-point protocol) support 219 &lt;*&gt; PPP (point-to-point protocol) support
263 &lt;*&gt; PPP support for async serial ports 220 &lt;*&gt; PPP support for async serial ports
264 &lt;*&gt; PPP support for sync tty ports 221 &lt;*&gt; PPP support for sync tty ports
265</pre> 222</pre>
266 223
267<pre caption="Selecting PPPoE necessary drivers" test="func:keyval('arch')='x86'">
268Device Drivers ---&gt;
269 Networking support ---&gt;
270 &lt;*&gt; PPP (point-to-point protocol) support
271 &lt;*&gt; PPP support for async serial ports
272 &lt;*&gt; PPP support for sync tty ports
273</pre>
274
275<p> 224<p>
276The two compression options won't harm but are not definitely needed, neither 225The two compression options won't harm but are not definitely needed, neither
277does the <c>PPP over Ethernet</c> option, that might only be used by <c>ppp</c> 226does the <c>PPP over Ethernet</c> option, that might only be used by <c>ppp</c>
278when configured to do kernel mode PPPoE. 227when configured to do kernel mode PPPoE.
279</p> 228</p>
299</pre> 248</pre>
300 249
301<note> 250<note>
302In multi-core systems, each core counts as one processor. 251In multi-core systems, each core counts as one processor.
303</note> 252</note>
253
254<p test="func:keyval('arch')='x86'">
255If you have more than 4GB of RAM, you need to enable "High Memory Support
256(64G)".
257</p>
304 258
305<p> 259<p>
306If you use USB Input Devices (like Keyboard or Mouse) don't forget to enable 260If you use USB Input Devices (like Keyboard or Mouse) don't forget to enable
307those as well: 261those as well:
308</p> 262</p>
453 407
454</body> 408</body>
455</section> 409</section>
456<section id="kernel_modules"> 410<section id="kernel_modules">
457<title>Kernel Modules</title> 411<title>Kernel Modules</title>
412
458<subsection> 413<subsection>
459<title>Configuring the Modules</title> 414<include href="hb-install-kernelmodules.xml"/>
460<body>
461
462<p>
463You should list the modules you want automatically loaded in
464<path>/etc/modules.autoload.d/kernel-2.6</path>. You can add extra options to
465the modules too if you want.
466</p>
467
468<p>
469To view all available modules, run the following <c>find</c> command. Don't
470forget to substitute "&lt;kernel version&gt;" with the version of the kernel you
471just compiled:
472</p>
473
474<pre caption="Viewing all available modules">
475# <i>find /lib/modules/&lt;kernel version&gt;/ -type f -iname '*.o' -or -iname '*.ko'</i>
476</pre>
477
478<p>
479For instance, to automatically load the <c>3c59x.ko</c> module, edit the
480<path>kernel-2.6</path> file and enter the module name in it.
481</p>
482
483<pre caption="Editing /etc/modules.autoload.d/kernel-2.6">
484# <i>nano -w /etc/modules.autoload.d/kernel-2.6</i>
485</pre>
486
487<pre caption="/etc/modules.autoload.d/kernel-2.6">
4883c59x
489</pre>
490
491<p>
492Continue the installation with <uri link="?part=1&amp;chap=8">Configuring
493your System</uri>.
494</p>
495
496</body>
497</subsection> 415</subsection>
416
498</section> 417</section>
499</sections> 418</sections>

Legend:
Removed from v.1.17  
changed lines
  Added in v.1.25

  ViewVC Help
Powered by ViewVC 1.1.20