.. include:: ./disclaimer-sp.rst

:Original: :ref:`Documentation/process/howto.rst <process_howto>`
:Translator: Carlos Bilbao <carlos.bilbao@amd.com>

.. _sp_process_howto:

Cómo participar en el desarrollo del kernel de Linux
====================================================

Este documento es el principal punto de partida. Contiene instrucciones
sobre cómo convertirse en desarrollador del kernel de Linux y explica cómo
trabajar con el y en su desarrollo. El documento no tratará ningún aspecto
técnico relacionado con la programación del kernel, pero le ayudará
guiándole por el camino correcto.

Si algo en este documento quedara obsoleto, envíe parches al maintainer de
este archivo, que se encuentra en la parte superior del documento.

Introducción
------------
¿De modo que quiere descubrir como convertirse en un/a desarrollador/a del
kernel de Linux? Tal vez su jefe le haya dicho, "Escriba un driver de
Linux para este dispositivo." El objetivo de este documento en enseñarle
todo cuanto necesita para conseguir esto, describiendo el proceso por el
que debe pasar, y con indicaciones de como trabajar con la comunidad.
También trata de explicar las razones por las cuales la comunidad trabaja
de la forma en que lo hace.

El kernel esta principalmente escrito en C, con algunas partes que son
dependientes de la arquitectura en ensamblador. Un buen conocimiento de C
es necesario para desarrollar en el kernel. Lenguaje ensamblador (en
cualquier arquitectura) no es necesario excepto que planee realizar
desarrollo de bajo nivel para dicha arquitectura. Aunque no es un perfecto
sustituto para una educación sólida en C y/o años de experiencia, los
siguientes libros sirven, como mínimo, como referencia:

- "The C Programming Language" de Kernighan e Ritchie [Prentice Hall]
- "Practical C Programming" de Steve Oualline [O'Reilly]
- "C:  A Reference Manual" de Harbison and Steele [Prentice Hall]

El kernel está escrito usando GNU C y la cadena de herramientas GNU. Si
bien se adhiere al estándar ISO C89, utiliza una serie de extensiones que
no aparecen en dicho estándar. El kernel usa un C independiente de entorno,
sin depender de la biblioteca C estándar, por lo que algunas partes del
estándar C no son compatibles. Divisiones de long long arbitrarios o
de coma flotante no son permitidas. En ocasiones, puede ser difícil de
entender las suposiciones que el kernel hace respecto a la cadena de
herramientas y las extensiones que usa, y desafortunadamente no hay
referencia definitiva para estas. Consulte las páginas de información de
gcc (`info gcc`) para obtener información al respecto.

Recuerde que está tratando de aprender a trabajar con una comunidad de
desarrollo existente. Es un grupo diverso de personas, con altos estándares
de código, estilo y procedimiento. Estas normas han sido creadas a lo
largo del tiempo en función de lo que se ha encontrado que funciona mejor
para un equipo tan grande y geográficamente disperso. Trate de aprender
tanto como le sea posible acerca de estos estándares antes de tiempo, ya
que están bien documentados; no espere que la gente se adapte a usted o a
la forma de hacer las cosas en su empresa.

Cuestiones legales
------------------
El código fuente del kernel de Linux se publica bajo licencia GPL. Por
favor, revise el archivo COPYING, presente en la carpeta principal del
código fuente, para detalles de la licencia. Si tiene alguna otra pregunta
sobre licencias, contacte a un abogado, no pregunte en listas de discusión
del kernel de Linux. La gente en estas listas no son abogadas, y no debe
confiar en sus opiniones en materia legal.

Para preguntas y respuestas más frecuentes sobre la licencia GPL, consulte:

	https://www.gnu.org/licenses/gpl-faq.html

Documentación
--------------
El código fuente del kernel de Linux tiene una gran variedad de documentos
que son increíblemente valiosos para aprender a interactuar con la
comunidad del kernel. Cuando se agregan nuevas funciones al kernel, se
recomienda que se incluyan nuevos archivos de documentación que expliquen
cómo usar la función. Cuando un cambio en el kernel hace que la interfaz
que el kernel expone espacio de usuario cambie, se recomienda que envíe la
información o un parche en las páginas del manual que expliquen el cambio
a mtk.manpages@gmail.com, y CC la lista linux-api@vger.kernel.org.

Esta es la lista de archivos que están en el código fuente del kernel y son
de obligada lectura:

  :ref:`Documentation/admin-guide/README.rst <readme>`
    Este archivo ofrece una breve descripción del kernel de Linux y
    describe lo que es necesario hacer para configurar y compilar el
    kernel. Quienes sean nuevos en el kernel deben comenzar aquí.

  :ref:`Documentation/process/changes.rst <changes>`
    Este archivo proporciona una lista de los niveles mínimos de varios
    paquetes que son necesarios para construir y ejecutar el kernel
    exitosamente.

  :ref:`Documentation/process/coding-style.rst <codingstyle>`
    Esto describe el estilo de código del kernel de Linux y algunas de los
    razones detrás de esto. Se espera que todo el código nuevo siga las
    directrices de este documento. La mayoría de los maintainers solo
    aceptarán parches si se siguen estas reglas, y muchas personas solo
    revisan el código si tiene el estilo adecuado.

  :ref:`Documentation/process/submitting-patches.rst <submittingpatches>`
    Este archivo describe en gran detalle cómo crear con éxito y enviar un
    parche, que incluye (pero no se limita a):

       - Contenidos del correo electrónico (email)
       - Formato del email
       - A quien se debe enviar

    Seguir estas reglas no garantiza el éxito (ya que todos los parches son
    sujetos a escrutinio de contenido y estilo), pero en caso de no seguir
    dichas reglas, el fracaso es prácticamente garantizado.
    Otras excelentes descripciones de cómo crear parches correctamente son:

	"The Perfect Patch"
		https://www.ozlabs.org/~akpm/stuff/tpp.txt

	"Linux kernel patch submission format"
		https://web.archive.org/web/20180829112450/http://linux.yyz.us/patch-format.html

  :ref:`Documentation/process/stable-api-nonsense.rst <stable_api_nonsense>`
    Este archivo describe la lógica detrás de la decisión consciente de
    no tener una API estable dentro del kernel, incluidas cosas como:

      - Capas intermedias del subsistema (por compatibilidad?)
      - Portabilidad de drivers entre sistemas operativos
      - Mitigar el cambio rápido dentro del árbol de fuentes del kernel (o
        prevenir cambios rápidos)

     Este documento es crucial para comprender la filosofía del desarrollo
     de Linux y es muy importante para las personas que se mudan a Linux
     tras desarrollar otros sistemas operativos.

  :ref:`Documentation/process/security-bugs.rst <securitybugs>`
    Si cree que ha encontrado un problema de seguridad en el kernel de
    Linux, siga los pasos de este documento para ayudar a notificar a los
    desarrolladores del kernel y ayudar a resolver el problema.

  :ref:`Documentation/process/management-style.rst <managementstyle>`
    Este documento describe cómo operan los maintainers del kernel de Linux
    y los valores compartidos detrás de sus metodologías. Esta es una
    lectura importante para cualquier persona nueva en el desarrollo del
    kernel (o cualquier persona que simplemente sienta curiosidad por
    el campo IT), ya que clarifica muchos conceptos erróneos y confusiones
    comunes sobre el comportamiento único de los maintainers del kernel.

  :ref:`Documentation/process/stable-kernel-rules.rst <stable_kernel_rules>`
    Este archivo describe las reglas sobre cómo se suceden las versiones
    del kernel estable, y qué hacer si desea obtener un cambio en una de
    estas publicaciones.

  :ref:`Documentation/process/kernel-docs.rst <kernel_docs>`
    Una lista de documentación externa relativa al desarrollo del kernel.
    Por favor consulte esta lista si no encuentra lo que están buscando
    dentro de la documentación del kernel.

  :ref:`Documentation/process/applying-patches.rst <applying_patches>`
    Una buena introducción que describe exactamente qué es un parche y cómo
    aplicarlo a las diferentes ramas de desarrollo del kernel.

El kernel también tiene una gran cantidad de documentos que pueden ser
generados automáticamente desde el propio código fuente o desde
ReStructuredText markups (ReST), como este. Esto incluye un descripción
completa de la API en el kernel y reglas sobre cómo manejar cerrojos
(locking) correctamente.

Todos estos documentos se pueden generar como PDF o HTML ejecutando::

	make pdfdocs
	make htmldocs

respectivamente desde el directorio fuente principal del kernel.

Los documentos que utilizan el markup ReST se generarán en
Documentation/output. También se pueden generar en formatos LaTeX y ePub
con::

	make latexdocs
	make epubdocs

Convertirse en un/a desarrollador/a de kernel
---------------------------------------------

Si no sabe nada sobre el desarrollo del kernel de Linux, debería consultar
el proyecto Linux KernelNewbies:

	https://kernelnewbies.org

Consiste en una útil lista de correo donde puede preguntar casi cualquier
tipo de pregunta básica de desarrollo del kernel (asegúrese de buscar en
los archivos primero, antes de preguntar algo que ya ha sido respondido en
el pasado.) También tiene un canal IRC que puede usar para hacer preguntas
en tiempo real, y una gran cantidad de documentación útil para ir
aprendiendo sobre el desarrollo del kernel de Linux.

El sitio web tiene información básica sobre la organización del código,
subsistemas, y proyectos actuales (tanto dentro como fuera del árbol).
También describe alguna información logística básica, como cómo compilar
un kernel y aplicar un parche.

Si no sabe por dónde quiere empezar, pero quieres buscar alguna tarea que
comenzar a hacer para unirse a la comunidad de desarrollo del kernel,
acuda al proyecto Linux Kernel Janitor:

	https://kernelnewbies.org/KernelJanitors

Es un gran lugar para comenzar. Describe una lista de problemas
relativamente simples que deben limpiarse y corregirse dentro del código
fuente del kernel de Linux árbol de fuentes. Trabajando con los
desarrolladores a cargo de este proyecto, aprenderá los conceptos básicos
para incluir su parche en el árbol del kernel de Linux, y posiblemente
descubrir en la dirección en que trabajar a continuación, si no tiene ya
una idea.

Antes de realizar cualquier modificación real al código del kernel de
Linux, es imperativo entender cómo funciona el código en cuestión. Para
este propósito, nada es mejor que leerlo directamente (lo más complicado
está bien comentado), tal vez incluso con la ayuda de herramientas
especializadas. Una de esas herramientas que se recomienda especialmente
es el proyecto Linux Cross-Reference, que es capaz de presentar el código
fuente en un formato de página web indexada y autorreferencial. Una
excelente puesta al día del repositorio del código del kernel se puede
encontrar en:

	https://elixir.bootlin.com/

El proceso de desarrollo
------------------------

El proceso de desarrollo del kernel de Linux consiste actualmente de
diferentes "branches" (ramas) con muchos distintos subsistemas específicos
a cada una de ellas. Las diferentes ramas son:

  - El código principal de Linus (mainline tree)
  - Varios árboles estables con múltiples major numbers
  - Subsistemas específicos
  - linux-next, para integración y testing

Mainline tree (Árbol principal)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

El mainline tree es mantenido por Linus Torvalds, y puede encontrarse en
https://kernel.org o en su repo.  El proceso de desarrollo es el siguiente:

  - Tan pronto como se lanza un nuevo kernel, se abre una ventana de dos
    semanas, durante este período de tiempo, los maintainers pueden enviar
    grandes modificaciones a Linus, por lo general los parches que ya se
    han incluido en el linux-next durante unas semanas. La forma preferida
    de enviar grandes cambios es usando git (la herramienta de
    administración de código fuente del kernel, más información al respecto
    en https://git-scm.com/), pero los parches simples también son validos.
  - Después de dos semanas, se lanza un kernel -rc1 y la atención se centra
    en hacer el kernel nuevo lo más estable ("solido") posible. La mayoría
    de los parches en este punto deben arreglar una regresión. Los errores
    que siempre han existido no son regresiones, por lo tanto, solo envíe
    este tipo de correcciones si son importantes. Tenga en cuenta que se
    podría aceptar un controlador (o sistema de archivos) completamente
    nuevo después de -rc1 porque no hay riesgo de causar regresiones con
    tal cambio, siempre y cuando el cambio sea autónomo y no afecte áreas
    fuera del código que se está agregando. git se puede usar para enviar
    parches a Linus después de que se lance -rc1, pero los parches también
    deben ser enviado a una lista de correo pública para su revisión.
  - Se lanza un nuevo -rc cada vez que Linus considera que el árbol git
    actual esta en un estado razonablemente sano y adecuado para la prueba.
    La meta es lanzar un nuevo kernel -rc cada semana.
  - El proceso continúa hasta que el kernel se considera "listo", y esto
    puede durar alrededor de 6 semanas.

Vale la pena mencionar lo que Andrew Morton escribió en las listas de
correo del kernel de Linux, sobre lanzamientos del kernel (traducido):

	*"Nadie sabe cuándo se publicara un nuevo kernel, pues esto sucede
	según el estado de los bugs, no de una cronología preconcebida."*

Varios árboles estables con múltiples major numbers
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Los kernels con versiones de 3 partes son kernels estables. Estos contienen
correcciones relativamente pequeñas y críticas para problemas de seguridad
o importantes regresiones descubiertas para una publicación de código.
Cada lanzamiento en una gran serie estable incrementa la tercera parte de
la versión número, manteniendo las dos primeras partes iguales.

Esta es la rama recomendada para los usuarios que quieren la versión
estable más reciente del kernel, y no están interesados en ayudar a probar
versiones en desarrollo/experimentales.

Los árboles estables son mantenidos por el equipo "estable"
<stable@vger.kernel.org>, y se liberan (publican) según lo dicten las
necesidades. El período de liberación normal es de aproximadamente dos
semanas, pero puede ser más largo si no hay problemas apremiantes. Un
problema relacionado con la seguridad, en cambio, puede causar un
lanzamiento casi instantáneamente.

El archivo :ref:`Documentación/proceso/stable-kernel-rules.rst <stable_kernel_rules>`
en el árbol del kernel documenta qué tipos de cambios son aceptables para
el árbol estable y cómo funciona el proceso de lanzamiento.

Subsistemas específicos
~~~~~~~~~~~~~~~~~~~~~~~~
Los maintainers de los diversos subsistemas del kernel --- y también muchos
desarrolladores de subsistemas del kernel --- exponen su estado actual de
desarrollo en repositorios fuente. De esta manera, otros pueden ver lo que
está sucediendo en las diferentes áreas del kernel. En áreas donde el
desarrollo es rápido, se le puede pedir a un desarrollador que base sus
envíos en tal árbol del subsistema del kernel, para evitar conflictos entre
este y otros trabajos ya en curso.

La mayoría de estos repositorios son árboles git, pero también hay otros
SCM en uso, o colas de parches que se publican como series quilt. Las
direcciones de estos repositorios de subsistemas se enumeran en el archivo
MAINTAINERS. Muchos de estos se pueden ver en https://git.kernel.org/.

Antes de que un parche propuesto se incluya con dicho árbol de subsistemas,
es sujeto a revisión, que ocurre principalmente en las listas de correo
(ver la sección respectiva a continuación). Para varios subsistemas del
kernel, esta revisión se rastrea con la herramienta patchwork. Patchwork
ofrece una interfaz web que muestra publicaciones de parches, cualquier
comentario sobre un parche o revisiones a él, y los maintainers pueden
marcar los parches como en revisión, aceptado, o rechazado. La mayoría de
estos sitios de trabajo de parches se enumeran en

https://patchwork.kernel.org/.

linux-next, para integración y testing
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Antes de que las actualizaciones de los árboles de subsistemas se combinen
con el árbol principal, necesitan probar su integración. Para ello, existe
un repositorio especial de pruebas en el que se encuentran casi todos los
árboles de subsistema, actualizado casi a diario:

	https://git.kernel.org/?p=linux/kernel/git/next/linux-next.git

De esta manera, linux-next ofrece una perspectiva resumida de lo que se
espera que entre en el kernel principal en el próximo período de "merge"
(fusión de código). Los testers aventureros son bienvenidos a probar
linux-next en ejecución.

Reportar bugs
-------------

El archivo 'Documentación/admin-guide/reporting-issues.rst' en el
directorio principal del kernel describe cómo informar un posible bug del
kernel y detalles sobre qué tipo de información necesitan los
desarrolladores del kernel para ayudar a rastrear la fuente del problema.

Gestión de informes de bugs
------------------------------

Una de las mejores formas de poner en práctica sus habilidades de hacking
es arreglando errores reportados por otras personas. No solo ayudará a
hacer el kernel más estable, también aprenderá a solucionar problemas del
mundo real y mejora sus habilidades, y otros desarrolladores se darán
cuenta de tu presencia. La corrección de errores es una de las mejores
formas de ganar méritos entre desarrolladores, porque no a muchas personas
les gusta perder el tiempo arreglando los errores de otras personas.

Para trabajar en informes de errores ya reportados, busque un subsistema
que le interese. Verifique el archivo MAINTAINERS donde se informan los
errores de ese subsistema; con frecuencia será una lista de correo, rara
vez un rastreador de errores (bugtracker). Busque en los archivos de dicho
lugar para informes recientes y ayude donde lo crea conveniente. También es
posible que desee revisar https://bugzilla.kernel.org para informes de
errores; solo un puñado de subsistemas del kernel lo emplean activamente
para informar o rastrear; sin embargo, todos los errores para todo el kernel
se archivan allí.

Listas de correo
-----------------

Como se explica en algunos de los documentos anteriores, la mayoría de
desarrolladores del kernel participan en la lista de correo del kernel de
Linux. Detalles sobre cómo para suscribirse y darse de baja de la lista se
pueden encontrar en:

	http://vger.kernel.org/vger-lists.html#linux-kernel

Existen archivos de la lista de correo en la web en muchos lugares
distintos. Utilice un motor de búsqueda para encontrar estos archivos. Por
ejemplo:

	http://dir.gmane.org/gmane.linux.kernel

Es muy recomendable que busque en los archivos sobre el tema que desea
tratar, antes de publicarlo en la lista. Un montón de cosas ya discutidas
en detalle solo se registran en los archivos de la lista de correo.

La mayoría de los subsistemas individuales del kernel también tienen sus
propias lista de correo donde hacen sus esfuerzos de desarrollo. Revise el
archivo MAINTAINERS para obtener referencias de lo que estas listas para
los diferentes grupos.

Muchas de las listas están alojadas en kernel.org. La información sobre
estas puede ser encontrada en:

	http://vger.kernel.org/vger-lists.html

Recuerde mantener buenos hábitos de comportamiento al usar las listas.
Aunque un poco cursi, la siguiente URL tiene algunas pautas simples para
interactuar con la lista (o cualquier lista):

	http://www.albion.com/netiquette/

Si varias personas responden a su correo, el CC (lista de destinatarios)
puede hacerse bastante grande. No elimine a nadie de la lista CC: sin una
buena razón, o no responda solo a la dirección de la lista. Acostúmbrese
a recibir correos dos veces, una del remitente y otra de la lista, y no
intente ajustar esto agregando encabezados de correo astutos, a la gente no
le gustará.

Recuerde mantener intacto el contexto y la atribución de sus respuestas,
mantenga las líneas "El hacker John Kernel escribió ...:" en la parte
superior de su respuesta, y agregue sus declaraciones entre las secciones
individuales citadas en lugar de escribiendo en la parte superior del
correo electrónico.

Si incluye parches en su correo, asegúrese de que sean texto legible sin
formato como se indica en :ref:`Documentation/process/submitting-patches.rst <submittingpatches>`.
Los desarrolladores del kernel no quieren lidiar con archivos adjuntos o
parches comprimidos; y pueden querer comentar líneas individuales de su
parche, que funciona sólo de esa manera. Asegúrese de emplear un programa
de correo que no altere los espacios ni los tabuladores. Una buena primera
prueba es enviarse el correo a usted mismo, e intentar aplicar su
propio parche. Si eso no funciona, arregle su programa de correo o
reemplace hasta que funcione.

Sobretodo, recuerde de ser respetuoso con otros subscriptores.

Colaborando con la comunidad
----------------------------

El objetivo de la comunidad del kernel es proporcionar el mejor kernel
posible. Cuando envíe un parche para su aceptación, se revisará en sus
méritos técnicos solamente. Entonces, ¿qué deberías ser?

  - críticas
  - comentarios
  - peticiones de cambios
  - peticiones de justificaciones
  - silencio

Recuerde, esto es parte de introducir su parche en el kernel. Tiene que ser
capaz de recibir críticas y comentarios sobre sus parches, evaluar
a nivel técnico y re-elaborar sus parches o proporcionar razonamiento claro
y conciso de por qué no se deben hacer tales cambios. Si no hay respuestas
a su publicación, espere unos días e intente de nuevo, a veces las cosas se
pierden dado el gran volumen.

¿Qué no debería hacer?

  - esperar que su parche se acepte sin preguntas
  - actuar de forma defensiva
  - ignorar comentarios
  - enviar el parche de nuevo, sin haber aplicados los cambios pertinentes

En una comunidad que busca la mejor solución técnica posible, siempre habrá
diferentes opiniones sobre lo beneficioso que es un parche. Tiene que ser
cooperativo y estar dispuesto a adaptar su idea para que encaje dentro
del kernel, o al menos esté dispuesto a demostrar que su idea vale la pena.
Recuerde, estar equivocado es aceptable siempre y cuando estés dispuesto a
trabajar hacia una solución que sea correcta.

Es normal que las respuestas a su primer parche sean simplemente una lista
de una docena de cosas que debe corregir. Esto **no** implica que su
parche no será aceptado, y **no** es personal. Simplemente corrija todos
los problemas planteados en su parche, y envié otra vez.

Diferencias entre la comunidad kernel y las estructuras corporativas
--------------------------------------------------------------------

La comunidad del kernel funciona de manera diferente a la mayoría de los
entornos de desarrollo tradicionales en empresas. Aquí hay una lista de
cosas que puede intentar hacer para evitar problemas:

  Cosas buenas que decir respecto a los cambios propuestos:

    - "Esto arregla múltiples problemas."
    - "Esto elimina 2000 lineas de código."
    - "Aquí hay un parche que explica lo que intento describir."
    - "Lo he testeado en 5 arquitecturas distintas..."
    - "Aquí hay una serie de parches menores que..."
    - "Esto mejora el rendimiento en maquinas típicas..."

  Cosas negativas que debe evitar decir:

    - "Lo hicimos así en AIX/ptx/Solaris, de modo que debe ser bueno..."
    - "Llevo haciendo esto 20 años, de modo que..."
    - "Esto lo necesita mi empresa para ganar dinero"
    - "Esto es para la linea de nuestros productos Enterprise"
    - "Aquí esta el documento de 1000 paginas describiendo mi idea"
    - "Llevo 6 meses trabajando en esto..."
    - "Aquí esta un parche de 5000 lineas que..."
    - "He rescrito todo el desastre actual, y aquí esta..."
    - "Tengo un deadline, y este parche debe aplicarse ahora."

Otra forma en que la comunidad del kernel es diferente a la mayoría de los
entornos de trabajo tradicionales en ingeniería de software, es la
naturaleza sin rostro de interacción. Una de las ventajas de utilizar el
correo electrónico y el IRC como formas principales de comunicación es la
no discriminación por motivos de género o raza. El entorno de trabajo del
kernel de Linux acepta a mujeres y minorías porque todo lo que eres es una
dirección de correo electrónico. El aspecto internacional también ayuda a
nivelar el campo de juego porque no puede adivinar el género basado en
el nombre de una persona. Un hombre puede llamarse Andrea y una mujer puede
llamarse Pat. La mayoría de las mujeres que han trabajado en el kernel de
Linux y han expresado una opinión han tenido experiencias positivas.

La barrera del idioma puede causar problemas a algunas personas que no se
sientes cómodas con el inglés. Un buen dominio del idioma puede ser
necesario para transmitir ideas correctamente en las listas de correo, por
lo que le recomendamos que revise sus correos electrónicos para asegurarse
de que tengan sentido en inglés antes de enviarlos.

Divida sus cambios
---------------------

La comunidad del kernel de Linux no acepta con gusto grandes fragmentos de
código, sobretodo a la vez. Los cambios deben introducirse correctamente,
discutidos y divididos en pequeñas porciones individuales. Esto es casi
exactamente lo contrario de lo que las empresas están acostumbradas a hacer.
Su propuesta también debe introducirse muy temprano en el proceso de
desarrollo, de modo que pueda recibir comentarios sobre lo que está
haciendo. También deje que la comunidad sienta que está trabajando con
ellos, y no simplemente usándolos como un vertedero para su función. Sin
embargo, no envíe 50 correos electrónicos a una vez a una lista de correo,
su serie de parches debe casi siempre ser más pequeña que eso.

Las razones para dividir las cosas son las siguientes:

1) Los cambios pequeños aumentan la probabilidad de que sus parches sean
   aplicados, ya que no requieren mucho tiempo o esfuerzo para verificar su
   exactitud. Un parche de 5 líneas puede ser aplicado por un maintainer
   con apenas una segunda mirada. Sin embargo, un parche de 500 líneas
   puede tardar horas en ser revisado en términos de corrección (el tiempo
   que toma es exponencialmente proporcional al tamaño del parche, o algo
   así).

   Los parches pequeños también facilitan la depuración cuando algo falla.
   Es mucho más fácil retirar los parches uno por uno que diseccionar un
   parche muy grande después de haber sido aplicado (y roto alguna cosa).

2) Es importante no solo enviar pequeños parches, sino también reescribir
   y simplificar (o simplemente reordenar) los parches antes de enviarlos.

Esta es una analogía del desarrollador del kernel Al Viro (traducida):

	*"Piense en un maestro que califica la tarea de un estudiante de
	matemáticas. El maestro no quiere ver los intentos y errores del
	estudiante antes de que se les ocurriera la solución. Quiere ver la
	respuesta más limpia y elegante. Un buen estudiante lo sabe, y nunca
	presentaría su trabajo intermedio antes de tener la solución final.*

	*Lo mismo ocurre con el desarrollo del kernel. Los maintainers y
	revisores no quieren ver el proceso de pensamiento detrás de la solución
	al problema que se está resolviendo. Quieren ver un solución simple y
	elegante."*

Puede resultar un reto mantener el equilibrio entre presentar una solución
elegante y trabajar junto a la comunidad, discutiendo su trabajo inacabado.
Por lo tanto, es bueno comenzar temprano en el proceso para obtener
"feedback" y mejorar su trabajo, pero también mantenga sus cambios en
pequeños trozos que pueden ser aceptados, incluso cuando toda su labor no
está listo para inclusión en un momento dado.

También tenga en cuenta que no es aceptable enviar parches para su
inclusión que están sin terminar y serán "arreglados más tarde".

Justifique sus cambios
----------------------

Además de dividir sus parches, es muy importante que deje a la comunidad de
Linux sabe por qué deberían agregar este cambio. Nuevas características
debe justificarse como necesarias y útiles.

Documente sus cambios
---------------------

Cuando envíe sus parches, preste especial atención a lo que dice en el
texto de su correo electrónico. Esta información se convertirá en el
ChangeLog del parche, y se conservará para que todos la vean, todo el
tiempo. Debe describir el parche por completo y contener:

  - por qué los cambios son necesarios
  - el diseño general de su propuesta
  - detalles de implementación
  - resultados de sus experimentos

Para obtener más detalles sobre cómo debería quedar todo esto, consulte la
sección ChangeLog del documento:

  "The Perfect Patch"
      https://www.ozlabs.org/~akpm/stuff/tpp.txt

Todas estas cuestiones son a veces son muy difíciles de conseguir. Puede
llevar años perfeccionar estas prácticas (si es que lo hace). Es un proceso
continuo de mejora que requiere mucha paciencia y determinación. Pero no se
rinda, es posible. Muchos lo han hecho antes, y cada uno tuvo que comenzar
exactamente donde está usted ahora.

----------

Gracias a Paolo Ciarrocchi que permitió que la sección "Development Process"
se basara en el texto que había escrito (https://lwn.net/Articles/94386/),
y a Randy Dunlap y Gerrit Huizenga por algunas de la lista de cosas que
debes y no debes decir. También gracias a Pat Mochel, Hanna Linder, Randy
Dunlap, Kay Sievers, Vojtech Pavlik, Jan Kara, Josh Boyer, Kees Cook,
Andrew Morton, Andi Kleen, Vadim Lobanov, Jesper Juhl, Adrian Bunk,
Keri Harris, Frans Pop, David A. Wheeler, Junio Hamano, Michael Kerrisk y
Alex Shepard por su revisión, comentarios y contribuciones. Sin su ayuda,
este documento no hubiera sido posible.

Maintainer: Greg Kroah-Hartman <greg@kroah.com>
