Documentation


Based on kernel version 6.12.4. Page generated on 2024-12-12 21:01 EST.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
.. SPDX-License-Identifier: GPL-2.0

.. _linux_doc:

==============================
The Linux Kernel documentation
==============================

This is the top level of the kernel's documentation tree.  Kernel
documentation, like the kernel itself, is very much a work in progress;
that is especially true as we work to integrate our many scattered
documents into a coherent whole.  Please note that improvements to the
documentation are welcome; join the linux-doc list at vger.kernel.org if
you want to help out.

Working with the development community
======================================

The essential guides for interacting with the kernel's development
community and getting your work upstream.

.. toctree::
   :maxdepth: 1

   Development process <process/development-process>
   Submitting patches <process/submitting-patches>
   Code of conduct <process/code-of-conduct>
   Maintainer handbook <maintainer/index>
   All development-process docs <process/index>


Internal API manuals
====================

Manuals for use by developers working to interface with the rest of the
kernel.

.. toctree::
   :maxdepth: 1

   Core API <core-api/index>
   Driver APIs <driver-api/index>
   Subsystems <subsystem-apis>
   Locking <locking/index>

Development tools and processes
===============================

Various other manuals with useful information for all kernel developers.

.. toctree::
   :maxdepth: 1

   Licensing rules <process/license-rules>
   Writing documentation <doc-guide/index>
   Development tools <dev-tools/index>
   Testing guide <dev-tools/testing-overview>
   Hacking guide <kernel-hacking/index>
   Tracing <trace/index>
   Fault injection <fault-injection/index>
   Livepatching <livepatch/index>
   Rust <rust/index>


User-oriented documentation
===========================

The following manuals are written for *users* of the kernel — those who are
trying to get it to work optimally on a given system and application
developers seeking information on the kernel's user-space APIs.

.. toctree::
   :maxdepth: 1

   Administration <admin-guide/index>
   Build system <kbuild/index>
   Reporting issues <admin-guide/reporting-issues.rst>
   Userspace tools <tools/index>
   Userspace API <userspace-api/index>

See also: the `Linux man pages <https://www.kernel.org/doc/man-pages/>`_,
which are kept separately from the kernel's own documentation.

Firmware-related documentation
==============================
The following holds information on the kernel's expectations regarding the
platform firmwares.

.. toctree::
   :maxdepth: 1

   Firmware <firmware-guide/index>
   Firmware and Devicetree <devicetree/index>


Architecture-specific documentation
===================================

.. toctree::
   :maxdepth: 2

   CPU architectures <arch/index>


Other documentation
===================

There are several unsorted documents that don't seem to fit on other parts
of the documentation body, or may require some adjustments and/or conversion
to reStructuredText format, or are simply too old.

.. toctree::
   :maxdepth: 1

   Unsorted documentation <staging/index>


Translations
============

.. toctree::
   :maxdepth: 2

   Translations <translations/index>

Indices and tables
==================

* :ref:`genindex`