€•û: Œsphinx.addnodes”Œdocument”“”)”}”(Œ rawsource”Œ ”Œchildren”]”(Œtranslations”Œ
LanguagesNode”“”)”}”(hhh]”(h Œpending_xref”“”)”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…””}”Œparent”hsbaŒ
attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ/translations/zh_CN/index”Œmodname”NŒ classname”NŒrefexplicit”ˆuŒtagname”hhhubh)”}”(hhh]”hŒChinese (Traditional)”…””}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ/translations/zh_TW/index”Œmodname”NŒ classname”NŒrefexplicit”ˆuh1hhhubh)”}”(hhh]”hŒItalian”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ/translations/it_IT/index”Œmodname”NŒ classname”NŒrefexplicit”ˆuh1hhhubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ/translations/ja_JP/index”Œmodname”NŒ classname”NŒrefexplicit”ˆuh1hhhubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ/translations/ko_KR/index”Œmodname”NŒ classname”NŒrefexplicit”ˆuh1hhhubh)”}”(hhh]”hŒPortuguese (Brazilian)”…””}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ/translations/pt_BR/index”Œmodname”NŒ classname”NŒrefexplicit”ˆuh1hhhubh)”}”(hhh]”hŒSpanish”…””}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ/translations/sp_SP/index”Œmodname”NŒ classname”NŒrefexplicit”ˆuh1hhhubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h
hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)”}”(hŒ SPDX-License-Identifier: GPL-2.0”h]”hŒ SPDX-License-Identifier: GPL-2.0”…””}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³Œ3/var/lib/git/docbuild/linux/Documentation/index.rst”h´KubhŒtarget”“”)”}”(hŒ.. _linux_doc:”h]”h}”(h]”h ]”h"]”h$]”h&]”Œrefid”Œ linux-doc”uh1hÈh´Khhh²hh³hÇubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒThe Linux Kernel documentation”h]”hŒThe Linux Kernel documentation”…””}”(hhÝh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhhØh²hh³hÇh´KubhŒ paragraph”“”)”}”(hXr 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.”h]”hXt 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.”…””}”(hhíh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´K hhØh²hubh×)”}”(hhh]”(hÜ)”}”(hŒ&Working with the development community”h]”hŒ&Working with the development community”…””}”(hhþh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhhûh²hh³hÇh´Kubhì)”}”(hŒlThe essential guides for interacting with the kernel's development
community and getting your work upstream.”h]”hŒnThe essential guides for interacting with the kernel’s development
community and getting your work upstream.”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´Khhûh²hubhŒcompound”“”)”}”(hhh]”h Œtoctree”“”)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”hŒindex”Œentries”]”(Œ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”†”eŒincludefiles”]”(j. j1 j4 j7 j: eŒmaxdepth”KŒcaption”NŒglob”‰Œhidden”‰Œ
includehidden”‰Œnumbered”K Œ
titlesonly”‰Œ
rawentries”]”(j- j0 j3 j6 j9 euh1j h³hÇh´Khj ubah}”(h]”h ]”Œtoctree-wrapper”ah"]”h$]”h&]”uh1j hhûh²hh³hÇh´Nubeh}”(h]”Œ&working-with-the-development-community”ah ]”h"]”Œ&working with the development community”ah$]”h&]”uh1hÖhhØh²hh³hÇh´Kubh×)”}”(hhh]”(hÜ)”}”(hŒInternal API manuals”h]”hŒInternal API manuals”…””}”(hjY h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhjV h²hh³hÇh´K!ubhì)”}”(hŒOManuals for use by developers working to interface with the rest of the
kernel.”h]”hŒOManuals for use by developers working to interface with the rest of the
kernel.”…””}”(hjg h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´K#hjV h²hubj )”}”(hhh]”j )”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”hj* j+ ]”(ŒCore API”Œcore-api/index”†”ŒDriver APIs”Œdriver-api/index”†”Œ
Subsystems”Œsubsystem-apis”†”ŒLocking”Œ
locking/index”†”ej< ]”(jƒ j† j‰ jŒ ej> Kj? Nj@ ‰jA ‰jB ‰jC K jD ‰jE ]”(j‚ j… jˆ j‹ euh1j h³hÇh´K&hju ubah}”(h]”h ]”jJ ah"]”h$]”h&]”uh1j hjV h²hh³hÇh´Nubeh}”(h]”Œinternal-api-manuals”ah ]”h"]”Œinternal api manuals”ah$]”h&]”uh1hÖhhØh²hh³hÇh´K!ubh×)”}”(hhh]”(hÜ)”}”(hŒDevelopment tools and processes”h]”hŒDevelopment tools and processes”…””}”(hj¡ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhjž h²hh³hÇh´K/ubhì)”}”(hŒHVarious other manuals with useful information for all kernel developers.”h]”hŒHVarious other manuals with useful information for all kernel developers.”…””}”(hj¯ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´K1hjž h²hubj )”}”(hhh]”j )”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”hj* j+ ]”(Œ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”†”ej< ]”(jË jÎ jÑ jÔ j× jÚ jÝ jà jã ej> Kj? Nj@ ‰jA ‰jB ‰jC K jD ‰jE ]”(jÊ jÍ jÐ jÓ jÖ jÙ jÜ jß jâ euh1j h³hÇh´K3hj½ ubah}”(h]”h ]”jJ ah"]”h$]”h&]”uh1j hjž h²hh³hÇh´Nubeh}”(h]”Œdevelopment-tools-and-processes”ah ]”h"]”Œdevelopment tools and processes”ah$]”h&]”uh1hÖhhØh²hh³hÇh´K/ubh×)”}”(hhh]”(hÜ)”}”(hŒUser-oriented documentation”h]”hŒUser-oriented documentation”…””}”(hjø h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhjõ h²hh³hÇh´KBubhì)”}”(hŒÒ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.”h]”(hŒ&The following manuals are written for ”…””}”(hj h²hh³Nh´NubhŒemphasis”“”)”}”(hŒ*users*”h]”hŒusers”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hj ubhŒ§ 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.”…””}”(hj h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´KDhjõ h²hubj )”}”(hhh]”j )”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”hj* j+ ]”(ŒAdministration”Œadmin-guide/index”†”ŒBuild system”Œkbuild/index”†”ŒReporting issues”Œadmin-guide/reporting-issues”†”ŒUserspace tools”Œtools/index”†”Œ
Userspace API”Œuserspace-api/index”†”ej< ]”(j6 j9 j< j? jB ej> Kj? Nj@ ‰jA ‰jB ‰jC K jD ‰jE ]”(j5 j8 j; j> jA euh1j h³hÇh´KHhj( ubah}”(h]”h ]”jJ ah"]”h$]”h&]”uh1j hjõ h²hh³hÇh´Nubhì)”}”(hŒˆSee also: the `Linux man pages `_,
which are kept separately from the kernel's own documentation.”h]”(hŒSee also: the ”…””}”(hjL h²hh³Nh´NubhŒ reference”“”)”}”(hŒ:`Linux man pages `_”h]”hŒLinux man pages”…””}”(hjV h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œname”ŒLinux man pages”Œrefuri”Œ%https://www.kernel.org/doc/man-pages/”uh1jT hjL ubhÉ)”}”(hŒ( ”h]”h}”(h]”Œlinux-man-pages”ah ]”h"]”Œlinux man pages”ah$]”h&]”Œrefuri”jg uh1hÈŒ
referenced”KhjL ubhŒB,
which are kept separately from the kernel’s own documentation.”…””}”(hjL h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´KQhjõ h²hubeh}”(h]”Œuser-oriented-documentation”ah ]”h"]”Œuser-oriented documentation”ah$]”h&]”uh1hÖhhØh²hh³hÇh´KBubh×)”}”(hhh]”(hÜ)”}”(hŒFirmware-related documentation”h]”hŒFirmware-related documentation”…””}”(hj‹ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhjˆ h²hh³hÇh´KUubhì)”}”(hŒ]The following holds information on the kernel's expectations regarding the
platform firmware.”h]”hŒ_The following holds information on the kernel’s expectations regarding the
platform firmware.”…””}”(hj™ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´KVhjˆ h²hubj )”}”(hhh]”j )”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”hj* j+ ]”(ŒFirmware”Œfirmware-guide/index”†”ŒFirmware and Devicetree”Œdevicetree/index”†”ej< ]”(jµ j¸ ej> Kj? Nj@ ‰jA ‰jB ‰jC K jD ‰jE ]”(j´ j· euh1j h³hÇh´KYhj§ ubah}”(h]”h ]”jJ ah"]”h$]”h&]”uh1j hjˆ h²hh³hÇh´Nubeh}”(h]”Œfirmware-related-documentation”ah ]”h"]”Œfirmware-related documentation”ah$]”h&]”uh1hÖhhØh²hh³hÇh´KUubh×)”}”(hhh]”(hÜ)”}”(hŒ#Architecture-specific documentation”h]”hŒ#Architecture-specific documentation”…””}”(hjÍ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhjÊ h²hh³hÇh´Kaubj )”}”(hhh]”j )”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”hj* j+ ]”ŒCPU architectures”Œ
arch/index”†”aj< ]”jé aj> Kj? Nj@ ‰jA ‰jB ‰jC K jD ‰jE ]”jè auh1j h³hÇh´KchjÛ ubah}”(h]”h ]”jJ ah"]”h$]”h&]”uh1j hjÊ h²hh³hÇh´Nubeh}”(h]”Œ#architecture-specific-documentation”ah ]”h"]”Œ#architecture-specific documentation”ah$]”h&]”uh1hÖhhØh²hh³hÇh´Kaubh×)”}”(hhh]”(hÜ)”}”(hŒOther documentation”h]”hŒOther documentation”…””}”(hjþ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhjû h²hh³hÇh´Kjubhì)”}”(hŒÊ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.”h]”hŒÌ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.”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´Klhjû h²hubj )”}”(hhh]”j )”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”hj* j+ ]”ŒUnsorted documentation”Œ
staging/index”†”aj< ]”j( aj> Kj? Nj@ ‰jA ‰jB ‰jC K jD ‰jE ]”j' auh1j h³hÇh´Kphj ubah}”(h]”h ]”jJ ah"]”h$]”h&]”uh1j hjû h²hh³hÇh´Nubeh}”(h]”Œother-documentation”ah ]”h"]”Œother documentation”ah$]”h&]”uh1hÖhhØh²hh³hÇh´Kjubh×)”}”(hhh]”(hÜ)”}”(hŒTranslations”h]”hŒTranslations”…””}”(hj= h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhj: h²hh³hÇh´Kwubj )”}”(hhh]”j )”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”hj* j+ ]”ŒTranslations”Œtranslations/index”†”aj< ]”jY aj> Kj? Nj@ ‰jA ‰jB ‰jC K jD ‰jE ]”jX auh1j h³hÇh´KyhjK ubah}”(h]”h ]”jJ ah"]”h$]”h&]”uh1j hj: h²hh³hÇh´Nubeh}”(h]”Œtranslations”ah ]”h"]”Œtranslations”ah$]”h&]”uh1hÖhhØh²hh³hÇh´Kwubh×)”}”(hhh]”(hÜ)”}”(hŒIndices and tables”h]”hŒIndices and tables”…””}”(hjn h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhjk h²hh³hÇh´KubhŒbullet_list”“”)”}”(hhh]”hŒ list_item”“”)”}”(hŒ:ref:`genindex`”h]”hì)”}”(hj… h]”h)”}”(hj… h]”hŒinline”“”)”}”(hj… h]”hŒgenindex”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”(Œxref”Œstd”Œstd-ref”eh"]”h$]”h&]”uh1j hjŠ ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j* Œ refdomain”jš Œreftype”Œref”Œrefexplicit”‰Œrefwarn”ˆŒ reftarget”Œgenindex”uh1hh³hÇh´Khj‡ ubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´Khjƒ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j hj~ h²hh³hÇh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œbullet”Œ*”uh1j| h³hÇh´Khjk h²hubeh}”(h]”Œindices-and-tables”ah ]”h"]”Œindices and tables”ah$]”h&]”uh1hÖhhØh²hh³hÇh´Kubeh}”(h]”(Œthe-linux-kernel-documentation”hÕeh ]”h"]”(Œthe linux kernel documentation”Œ linux_doc”eh$]”h&]”uh1hÖhhh²hh³hÇh´KŒexpect_referenced_by_name”}”jÏ hÊsŒexpect_referenced_by_id”}”hÕhÊsubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÇuh1hŒcurrent_source”NŒcurrent_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)”}”(hÛNŒ generator”NŒ datestamp”NŒsource_link”NŒ
source_url”NŒ
toc_backlinks”Œentry”Œfootnote_backlinks”KŒ
sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ
strip_classes”NŒreport_level”KŒ
halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”jù Œerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ
language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ
dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÇŒ_destination”NŒ
_config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒraw_enabled”KŒline_length_limit”M'Œpep_references”NŒpep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒrfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œsmart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ
docinfo_xform”KŒsectsubtitle_xform”‰Œ
image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”hÕ]”hÊasŒnameids”}”(jÏ hÕjÎ jË jS jP j› j˜ jò jï j… j‚ jq jn jÇ jÄ jø jõ j7 j4 jh je jÆ jà uŒ nametypes”}”(jÏ ˆjÎ ‰jS ‰j› ‰jò ‰j… ‰jq ˆjÇ ‰jø ‰j7 ‰jh ‰jÆ ‰uh}”(hÕhØjË hØjP hûj˜ jV jï jž j‚ jõ jn jh jÄ jˆ jõ jÊ j4 jû je j: jà jk uŒ
footnote_refs”}”Œ
citation_refs”}”Œ
autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”K Œ
id_counter”Œcollections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”hŒsystem_message”“”)”}”(hhh]”hì)”}”(hhh]”hŒ/Hyperlink target "linux-doc" is not referenced.”…””}”hjc sbah}”(h]”h ]”h"]”h$]”h&]”uh1hëhj` ubah}”(h]”h ]”h"]”h$]”h&]”Œlevel”KŒtype”ŒINFO”Œsource”hÇŒline”Kuh1j^ ubaŒtransformer”NŒinclude_log”]”Œ
decoration”Nh²hub.