summaryrefslogtreecommitdiffstats
path: root/documentation/kernel-dev
diff options
context:
space:
mode:
authorScott Rifenbark <srifenbark@gmail.com>2017-09-27 09:38:23 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-10-06 12:06:33 +0100
commit2e21a56a8a0a933af4fe3f63fa6d921f13e85f4e (patch)
tree6c0b71582a128c29636a0d77ea93dfb9b64c99fa /documentation/kernel-dev
parent77a52d0b103a96d8503f5d7c65ff9e6d31dd6e89 (diff)
downloadpoky-2e21a56a8a0a933af4fe3f63fa6d921f13e85f4e.tar.gz
kernel-dev: Added "Validating Configuration" section
Provided a new section on how to validate the configuration of the kernel. (From yocto-docs rev: 25f43d1baeff7d571fc60c7edca957d4ce6d6357) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/kernel-dev')
-rw-r--r--documentation/kernel-dev/kernel-dev-common.xml154
1 files changed, 105 insertions, 49 deletions
diff --git a/documentation/kernel-dev/kernel-dev-common.xml b/documentation/kernel-dev/kernel-dev-common.xml
index bfc82e2451..494f6af117 100644
--- a/documentation/kernel-dev/kernel-dev-common.xml
+++ b/documentation/kernel-dev/kernel-dev-common.xml
@@ -1748,6 +1748,111 @@
1748 </para> 1748 </para>
1749 </section> 1749 </section>
1750 1750
1751 <section id='validating-configuration'>
1752 <title>Validating Configuration</title>
1753
1754 <para>
1755 You can use the
1756 <ulink url='&YOCTO_DOCS_REF_URL;#ref-tasks-kernel_configcheck'><filename>do_kernel_configcheck</filename></ulink>
1757 task to provide configuration validation:
1758 <literallayout class='monospaced'>
1759 $ bitbake linux-yocto -c kernel_configcheck -f
1760 </literallayout>
1761 Running this task produces warnings for when a
1762 requested configuration does not appear in the final
1763 <filename>.config</filename> file or when you override a
1764 policy configuration in a hardware configuration fragment.
1765 </para>
1766
1767 <para>
1768 In order to run this task, you must have an existing
1769 <filename>.config</filename> file.
1770 See the
1771 "<link linkend='using-menuconfig'>Using <filename>menuconfig</filename></link>"
1772 section for information on how to create a configuration file.
1773 </para>
1774
1775 <para>
1776 Following is sample output from the
1777 <filename>do_kernel_configcheck</filename> task:
1778 <literallayout class='monospaced'>
1779 Loading cache: 100% |########################################################| Time: 0:00:00
1780 Loaded 1275 entries from dependency cache.
1781 NOTE: Resolving any missing task queue dependencies
1782
1783 Build Configuration:
1784 .
1785 .
1786 .
1787
1788 NOTE: Executing SetScene Tasks
1789 NOTE: Executing RunQueue Tasks
1790 WARNING: linux-yocto-4.12.12+gitAUTOINC+eda4d18ce4_16de014967-r0 do_kernel_configcheck:
1791 [kernel config]: specified values did not make it into the kernel's final configuration:
1792
1793 ---------- CONFIG_X86_TSC -----------------
1794 Config: CONFIG_X86_TSC
1795 From: /home/scottrif/poky/build/tmp/work-shared/qemux86/kernel-source/.kernel-meta/configs/standard/bsp/common-pc/common-pc-cpu.cfg
1796 Requested value: CONFIG_X86_TSC=y
1797 Actual value:
1798
1799
1800 ---------- CONFIG_X86_BIGSMP -----------------
1801 Config: CONFIG_X86_BIGSMP
1802 From: /home/scottrif/poky/build/tmp/work-shared/qemux86/kernel-source/.kernel-meta/configs/standard/cfg/smp.cfg
1803 /home/scottrif/poky/build/tmp/work-shared/qemux86/kernel-source/.kernel-meta/configs/standard/defconfig
1804 Requested value: # CONFIG_X86_BIGSMP is not set
1805 Actual value:
1806
1807
1808 ---------- CONFIG_NR_CPUS -----------------
1809 Config: CONFIG_NR_CPUS
1810 From: /home/scottrif/poky/build/tmp/work-shared/qemux86/kernel-source/.kernel-meta/configs/standard/cfg/smp.cfg
1811 /home/scottrif/poky/build/tmp/work-shared/qemux86/kernel-source/.kernel-meta/configs/standard/bsp/common-pc/common-pc.cfg
1812 /home/scottrif/poky/build/tmp/work-shared/qemux86/kernel-source/.kernel-meta/configs/standard/defconfig
1813 Requested value: CONFIG_NR_CPUS=8
1814 Actual value: CONFIG_NR_CPUS=1
1815
1816
1817 ---------- CONFIG_SCHED_SMT -----------------
1818 Config: CONFIG_SCHED_SMT
1819 From: /home/scottrif/poky/build/tmp/work-shared/qemux86/kernel-source/.kernel-meta/configs/standard/cfg/smp.cfg
1820 /home/scottrif/poky/build/tmp/work-shared/qemux86/kernel-source/.kernel-meta/configs/standard/defconfig
1821 Requested value: CONFIG_SCHED_SMT=y
1822 Actual value:
1823
1824
1825
1826 NOTE: Tasks Summary: Attempted 288 tasks of which 285 didn't need to be rerun and all succeeded.
1827
1828 Summary: There were 3 WARNING messages shown.
1829 </literallayout>
1830 <note>
1831 The previous output example has artificial line breaks
1832 to make it more readable.
1833 </note>
1834 </para>
1835
1836 <para>
1837 The output describes the various problems that you can
1838 encounter along with where to find the offending configuration
1839 items.
1840 You can use the information in the logs to adjust your
1841 configuration files and then repeat the
1842 <ulink url='&YOCTO_DOCS_REF_URL;#ref-tasks-kernel_configme'><filename>do_kernel_configme</filename></ulink>
1843 and
1844 <ulink url='&YOCTO_DOCS_REF_URL;#ref-tasks-kernel_configcheck'><filename>do_kernel_configcheck</filename></ulink>
1845 tasks until they produce no warnings.
1846 </para>
1847
1848 <para>
1849 For more information on how to use the
1850 <filename>menuconfig</filename> tool, see the
1851 "<link linkend='using-menuconfig'>Using <filename>menuconfig</filename></link>"
1852 section.
1853 </para>
1854 </section>
1855
1751 <section id='fine-tuning-the-kernel-configuration-file'> 1856 <section id='fine-tuning-the-kernel-configuration-file'>
1752 <title>Fine-Tuning the Kernel Configuration File</title> 1857 <title>Fine-Tuning the Kernel Configuration File</title>
1753 1858
@@ -2034,55 +2139,6 @@
2034 section for more information. 2139 section for more information.
2035 </note> 2140 </note>
2036 </para> 2141 </para>
2037
2038 <para>
2039 The kernel tools also provide configuration validation.
2040 You can use these tools to produce warnings for when a
2041 requested configuration does not appear in the final
2042 <filename>.config</filename> file or when you override a
2043 policy configuration in a hardware configuration fragment.
2044 Here is an example with some sample output of the command
2045 that runs these tools:
2046 <literallayout class='monospaced'>
2047 $ bitbake linux-yocto -c kernel_configcheck -f
2048
2049 ...
2050
2051 NOTE: validating kernel configuration
2052 This BSP sets 3 invalid/obsolete kernel options.
2053 These config options are not offered anywhere within this kernel.
2054 The full list can be found in your kernel src dir at:
2055 meta/cfg/standard/mybsp/invalid.cfg
2056
2057 This BSP sets 21 kernel options that are possibly non-hardware related.
2058 The full list can be found in your kernel src dir at:
2059 meta/cfg/standard/mybsp/specified_non_hdw.cfg
2060
2061 WARNING: There were 2 hardware options requested that do not
2062 have a corresponding value present in the final ".config" file.
2063 This probably means you are not getting the config you wanted.
2064 The full list can be found in your kernel src dir at:
2065 meta/cfg/standard/mybsp/mismatch.cfg
2066 </literallayout>
2067 </para>
2068
2069 <para>
2070 The output describes the various problems that you can
2071 encounter along with where to find the offending configuration
2072 items.
2073 You can use the information in the logs to adjust your
2074 configuration files and then repeat the
2075 <filename>kernel_configme</filename> and
2076 <filename>kernel_configcheck</filename> commands until
2077 they produce no warnings.
2078 </para>
2079
2080 <para>
2081 For more information on how to use the
2082 <filename>menuconfig</filename> tool, see the
2083 "<link linkend='using-menuconfig'>Using <filename>menuconfig</filename></link>"
2084 section.
2085 </para>
2086 </section> 2142 </section>
2087 2143
2088 <section id='modifying-source-code'> 2144 <section id='modifying-source-code'>