swift 11/12/26 16:00:00
Modified: kernel-config.xml
Log:
Add information about short-hand notations, use #shorthand to refer to it later
Revision Changes Path
1.9 xml/htdocs/doc/en/kernel-config.xml
file : http://sources.gentoo.org/viewvc.cgi/gentoo/xml/htdocs/doc/en/kernel-config.xml?rev=1.9&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/xml/htdocs/doc/en/kernel-config.xml?rev=1.9&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo/xml/htdocs/doc/en/kernel-config.xml?r1=1.8&r2=1.9
Index: kernel-config.xml
===================================================================
RCS file: /var/cvsroot/gentoo/xml/htdocs/doc/en/kernel-config.xml,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- kernel-config.xml 4 Sep 2011 17:53:40 -0000 1.8
+++ kernel-config.xml 26 Dec 2011 15:59:59 -0000 1.9
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/kernel-config.xml,v 1.8 2011/09/04 17:53:40 swift Exp $ -->
+<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/kernel-config.xml,v 1.9 2011/12/26 15:59:59 swift Exp $ -->
<!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
<guide>
@@ -33,8 +33,8 @@
<!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
<license/>
-<version>1.4</version>
-<date>2010-03-21</date>
+<version>2</version>
+<date>2011-12-26</date>
<chapter>
<title>Introduction</title>
@@ -508,6 +508,120 @@
</section>
</chapter>
+<chapter id="shorthand">
+<title>Kernel configuration shorthand notation</title>
+<section>
+<title>Introduction</title>
+<body>
+
+<p>
+When you read about kernel configurations, you will often see that settings are
+described as <c>CONFIG_<something></c>. This short-hand notation is what
+the kernel configuration actually uses internally, and is what you will find in
+the kernel configuration file (be it <path>/usr/src/linux/.config</path> or in
+the auto-generated <path>/proc/config.gz</path> file). Of course, using
+short-hand notation wouldn't do much good if you cannot translate this to the
+real location in the kernel configuration. Luckily, the <c>make menuconfig</c>
+tool allows you to do just that.
+</p>
+
+</body>
+</section>
+<section>
+<title>Translating CONFIG_FOO to the real configuration location</title>
+<body>
+
+<p>
+Suppose you need to enable <c>CONFIG_TMPFS_XATTR</c>, launch the kernel
+configuration menu (<c>make menuconfig</c>) and type in <c>/</c>. This will open
+the search box. In this search box, type <c>CONFIG_TMPFS_XATTR</c> (you can even
+drop the <c>CONFIG_</c>). The next code listing shows the result of this search.
+</p>
+
+<pre caption="Result of looking for CONFIG_TMPFS_XATTR">
+Symbol: TMPFS_XATTR [=n]
+Type : boolean
+Prompt: Tmpfs extended attributes
+ Defined at fs/Kconfig:138
+ Depends on: TMPFS [=y]
+ Location:
+ -> File systems
+ -> Pseudo filesystems
+ -> Virtual memory file system support (former shm fs) (TMPFS [=y])
+ Selected by: TMPFS_POSIX_ACL [=n] && TMPFS [=y]
+</pre>
+
+<p>
+This output yields lots of interesting information.
+</p>
+
+<table>
+<tr>
+ <th>Entry</th>
+ <th>Description</th>
+</tr>
+<tr>
+ <ti>Symbol: TMPFS_XATTR [=n]</ti>
+ <ti>
+ This identifies the kernel configuration entry you are looking for. It also
+ already tells you that the setting is currently <e>not enabled</e> ([=n]).
+ </ti>
+</tr>
+<tr>
+ <ti>Type: boolean</ti>
+ <ti>
+ The setting you looked for is a boolean (which means you can enable or
+ disable it). Some settings are numbers or strings.
+ </ti>
+</tr>
+<tr>
+ <ti>Prompt: Tmpfs extended attributes</ti>
+ <ti>
+ This is the text you will find in <c>make menuconfig</c> and as such, is the
+ entry that you are looking for in a more human readable format.
+ </ti>
+</tr>
+<tr>
+ <ti>Depends on: TMPFS [=y]</ti>
+ <ti>
+ Before you can even see this entry, you need to have <c>CONFIG_TMPFS</c>
+ enabled. In this case, this is done (hence the [=y]) but if this is not the
+ case, you will first need to look (and enable) <c>CONFIG_TMPFS</c>.
+ </ti>
+</tr>
+<tr>
+ <ti>Location: ...</ti>
+ <ti>
+ This is the location in the <c>make menuconfig</c> structure where you can
+ find the setting. Remember, the setting you are looking for is <e>Tmpfs
+ extended attributes</e>.
+ </ti>
+</tr>
+<tr>
+ <ti>Selected by: TMPFS_POSIX_ACL [=n] && TMPFS [=y]</ti>
+ <ti>
+ If the settings described here are both enabled (in our case, the first one
+ isn't), then <c>CONFIG_TMPFS_XATTR</c> will be automatically enabled as well
+ and you will not be able to disable it.
+ </ti>
+</tr>
+</table>
+
+<p>
+With this information, you should be able to translate any <c>CONFIG_*</c>
+requirements tossed at you easily. In short, it means you
+</p>
+
+<ol>
+ <li>need to enable the settings described in the <e>Depends on</e> field</li>
+ <li>navigate where <e>Location:</e> points you towards</li>
+ <li>toggle the value referred to by <e>Prompt:</e></li>
+</ol>
+
+</body>
+</section>
+</chapter>
+
<chapter>
<title>Other kernel configuration documentation</title>
<section>
|