A handful of documentation patches that were ready before the merge window,

but which I didn't get merged for the first round:
 
 - A recommendation from Thorsten (also akpm) on use of Link tags to point
   out problem reports.
 
 - Some front-page formatting tweaks
 
 - Another Spanish translation
 
 - One typo(ish) fix.
 -----BEGIN PGP SIGNATURE-----
 
 iQFDBAABCAAtFiEEIw+MvkEiF49krdp9F0NaE2wMflgFAmP+VoMPHGNvcmJldEBs
 d24ubmV0AAoJEBdDWhNsDH5Y+FQIAIj1tmWwPkvzVlURhB9EKCSle91aZxvIZZR8
 B8ibU3iak+TR5crkTzhjqy9VDRLv/LxgPVBdNzq6Wqz9phe0tReIdUcL30yIDKxP
 KEaJZrdh58IyebVarpToLqKMZ0u5id/ettuvAJNCPDHWLAzud1oZXSh2eKJqfntb
 eqLm+L+MkVpswDTN0HqXxxfDezM5zpfT3LOpX1+Fwg3/4JMy2QxoxIZewBnoKkI7
 brgteTGVXxgmfemXtfGkFG9VzsszACzr86I24b+0sFXsXMgMGytEPjVZ9uSXspMw
 8E3q63BokG/DxXeewvZwOCahaNRxPGkxX/GwKh9HNyEXdi6ooCw=
 =xVak
 -----END PGP SIGNATURE-----

Merge tag 'docs-6.3-2' of git://git.lwn.net/linux

Pull Documentation stragglers from Jonathan Corbet:
 "A handful of documentation patches that were ready before the merge
  window, but which I didn't get merged for the first round:

   - A recommendation from Thorsten (also akpm) on use of Link tags to
     point out problem reports

   - Some front-page formatting tweaks

   - Another Spanish translation

   - One typo(ish) fix"

* tag 'docs-6.3-2' of git://git.lwn.net/linux:
  docs: recommend using Link: whenever using Reported-by:
  Documentation: front page: use recommended heading adornments
  docs/sp_SP: Add process programming-language translation
  docs: locking: refer to the actual existing config names
This commit is contained in:
Linus Torvalds 2023-02-28 16:01:08 -08:00
commit b1f1382a11
6 changed files with 72 additions and 15 deletions

View File

@ -2,6 +2,7 @@
.. _linux_doc:
==============================
The Linux Kernel documentation
==============================
@ -13,7 +14,7 @@ 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.
@ -29,7 +30,7 @@ community and getting your work upstream.
Internal API manuals
--------------------
====================
Manuals for use by developers working to interface with the rest of the
kernel.
@ -43,7 +44,7 @@ kernel.
Locking in the kernel <locking/index>
Development tools and processes
-------------------------------
===============================
Various other manuals with useful information for all kernel developers.
@ -62,7 +63,7 @@ Various other manuals with useful information for all kernel developers.
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
@ -81,7 +82,7 @@ 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.
@ -93,7 +94,7 @@ platform firmwares.
Architecture-specific documentation
-----------------------------------
===================================
.. toctree::
:maxdepth: 2
@ -102,7 +103,7 @@ Architecture-specific documentation
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
@ -115,7 +116,7 @@ to ReStructured Text format, or are simply too old.
Translations
------------
============
.. toctree::
:maxdepth: 2

View File

@ -5,7 +5,7 @@ Kernel Lock Torture Test Operation
CONFIG_LOCK_TORTURE_TEST
========================
The CONFIG LOCK_TORTURE_TEST config option provides a kernel module
The CONFIG_LOCK_TORTURE_TEST config option provides a kernel module
that runs torture tests on core kernel locking primitives. The kernel
module, 'locktorture', may be built after the fact on the running
kernel to be tested, if desired. The tests periodically output status
@ -67,7 +67,7 @@ torture_type
- "rtmutex_lock":
rtmutex_lock() and rtmutex_unlock() pairs.
Kernel must have CONFIG_RT_MUTEX=y.
Kernel must have CONFIG_RT_MUTEXES=y.
- "rwsem_lock":
read/write down() and up() semaphore pairs.

View File

@ -251,7 +251,8 @@ The tags in common use are:
- Reported-by: names a user who reported a problem which is fixed by this
patch; this tag is used to give credit to the (often underappreciated)
people who test our code and let us know when things do not work
correctly.
correctly. Note, this tag should be followed by a Link: tag pointing to the
report, unless the report is not available on the web.
- Cc: the named person received a copy of the patch and had the
opportunity to comment on it.

View File

@ -496,10 +496,11 @@ Using Reported-by:, Tested-by:, Reviewed-by:, Suggested-by: and Fixes:
----------------------------------------------------------------------
The Reported-by tag gives credit to people who find bugs and report them and it
hopefully inspires them to help us again in the future. Please note that if
the bug was reported in private, then ask for permission first before using the
Reported-by tag. The tag is intended for bugs; please do not use it to credit
feature requests.
hopefully inspires them to help us again in the future. The tag is intended for
bugs; please do not use it to credit feature requests. The tag should be
followed by a Link: tag pointing to the report, unless the report is not
available on the web. Please note that if the bug was reported in private, then
ask for permission first before using the Reported-by tag.
A Tested-by: tag indicates that the patch has been successfully tested (in
some environment) by the person named. This tag informs maintainers that

View File

@ -17,3 +17,4 @@
kernel-enforcement-statement
email-clients
magic-number
programming-language

View File

@ -0,0 +1,53 @@
.. include:: ../disclaimer-sp.rst
:Original: :ref:`Documentation/process/programming-language.rst <programming_language>`
:Translator: Carlos Bilbao <carlos.bilbao@amd.com>
.. _sp_programming_language:
Lenguaje de programación
========================
El kernel está escrito en el lenguaje de programación C [sp-c-language]_.
Más concretamente, el kernel normalmente se compila con ``gcc`` [sp-gcc]_
bajo ``-std=gnu11`` [sp-gcc-c-dialect-options]_: el dialecto GNU de ISO C11.
``clang`` [sp-clang]_ también es compatible, consulte los documentos en
:ref:`Building Linux with Clang/LLVM <kbuild_llvm>`.
Este dialecto contiene muchas extensiones del lenguaje [sp-gnu-extensions]_,
y muchos de ellos se usan dentro del kernel de forma habitual.
Hay algo de soporte para compilar el núcleo con ``icc`` [sp-icc]_ para varias
de las arquitecturas, aunque en el momento de escribir este texto, eso no
está terminado y requiere parches de terceros.
Atributos
---------
Una de las comunes extensiones utilizadas en todo el kernel son los atributos
[sp-gcc-attribute-syntax]_. Los atributos permiten introducir semántica
definida por la implementación a las entidades del lenguaje (como variables,
funciones o tipos) sin tener que hacer cambios sintácticos significativos
al idioma (por ejemplo, agregar una nueva palabra clave) [sp-n2049]_.
En algunos casos, los atributos son opcionales (es decir, hay compiladores
que no los admiten pero de todos modos deben producir el código adecuado,
incluso si es más lento o no realiza tantas comprobaciones/diagnósticos en
tiempo de compilación).
El kernel define pseudo-palabras clave (por ejemplo, ``__pure``) en lugar
de usar directamente la sintaxis del atributo GNU (por ejemplo,
``__attribute__((__pure__))``) con el fin de detectar cuáles se pueden
utilizar y/o acortar el código.
Por favor consulte ``include/linux/compiler_attributes.h`` para obtener
más información.
.. [sp-c-language] http://www.open-std.org/jtc1/sc22/wg14/www/standards
.. [sp-gcc] https://gcc.gnu.org
.. [sp-clang] https://clang.llvm.org
.. [sp-icc] https://software.intel.com/en-us/c-compilers
.. [sp-gcc-c-dialect-options] https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html
.. [sp-gnu-extensions] https://gcc.gnu.org/onlinedocs/gcc/C-Extensions.html
.. [sp-gcc-attribute-syntax] https://gcc.gnu.org/onlinedocs/gcc/Attribute-Syntax.html
.. [sp-n2049] http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2049.pdf