1a0454bb5SCarlos Bilbao.. include:: ../disclaimer-sp.rst
2a0454bb5SCarlos Bilbao
3a0454bb5SCarlos Bilbao:Original: :ref:`Documentation/process/submitting-patches.rst <submittingpatches>`
4a0454bb5SCarlos Bilbao:Translator: Carlos Bilbao <carlos.bilbao@amd.com>
5a0454bb5SCarlos Bilbao
6a0454bb5SCarlos Bilbao.. _sp_submittingpatches:
7a0454bb5SCarlos Bilbao
8a0454bb5SCarlos BilbaoEnvío de parches: la guía esencial para incluir su código en el kernel
9a0454bb5SCarlos Bilbao=======================================================================
10a0454bb5SCarlos Bilbao
11a0454bb5SCarlos BilbaoPara una persona o empresa que desee enviar un cambio al kernel Linux,
12a0454bb5SCarlos Bilbaoel proceso puede en ocasiones resultar desalentador si no se está
13a0454bb5SCarlos Bilbaofamiliarizado con "el sistema". Este texto es una colección de sugerencias
14a0454bb5SCarlos Bilbaoque pueden aumentar considerablemente las posibilidades de que se acepte su
15a0454bb5SCarlos Bilbaocambio.
16a0454bb5SCarlos Bilbao
17a0454bb5SCarlos BilbaoEste documento contiene una gran cantidad de sugerencias en un formato
18a0454bb5SCarlos Bilbaorelativamente conciso. Para obtener información detallada sobre cómo
19a0454bb5SCarlos Bilbaofunciona el proceso de desarrollo del kernel, consulte
20a0454bb5SCarlos BilbaoDocumentation/process/development-process.rst. Además, lea
21a0454bb5SCarlos BilbaoDocumentation/process/submit-checklist.rst para obtener una lista de
22a0454bb5SCarlos Bilbaoelementos a verificar antes de enviar código. Para los parches de
23a0454bb5SCarlos Bilbao"binding" del árbol de dispositivos, lea
24a0454bb5SCarlos BilbaoDocumentation/devicetree/bindings/submitting-patches.rst.
25a0454bb5SCarlos Bilbao
26a0454bb5SCarlos BilbaoEsta documentación asume que está usando ``git`` para preparar sus parches.
27a0454bb5SCarlos BilbaoSi no está familiarizado con ``git``, le recomendamos que aprenda a
28a0454bb5SCarlos Bilbaousarlo, le hará la vida como desarrollador del kernel y en general mucho
29a0454bb5SCarlos Bilbaomás sencilla.
30a0454bb5SCarlos Bilbao
31a0454bb5SCarlos BilbaoAlgunos subsistemas y árboles de mantenimiento cuentan con información
32a0454bb5SCarlos Bilbaoadicional sobre su flujo de trabajo y expectativas, consulte
33a0454bb5SCarlos Bilbao:ref:`Documentation/process/maintainer-handbooks.rst <maintainer_handbooks_main>`.
34a0454bb5SCarlos Bilbao
35a0454bb5SCarlos BilbaoObtenga el código fuente actual
36a0454bb5SCarlos Bilbao--------------------------------
37a0454bb5SCarlos Bilbao
38a0454bb5SCarlos BilbaoSi no tiene a mano un repositorio con el código fuente actual del kernel,
39a0454bb5SCarlos Bilbaouse ``git`` para obtener uno. Querrá comenzar con el repositorio principal,
40a0454bb5SCarlos Bilbaoque se puede descargar con::
41a0454bb5SCarlos Bilbao
42a0454bb5SCarlos Bilbao  git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
43a0454bb5SCarlos Bilbao
44a0454bb5SCarlos BilbaoTenga en cuenta, sin embargo, que es posible que no desee desarrollar con
45a0454bb5SCarlos Bilbaoel árbol principal directamente. La mayoría de los maintainers de
46a0454bb5SCarlos Bilbaosubsistemas usan sus propios árboles de código fuente y quieren ver parches
47a0454bb5SCarlos Bilbaopreparados para esos árboles. Revise el campo **T:** para el subsistema
48a0454bb5SCarlos Bilbaoen el archivo MAINTAINERS para encontrar dicho árbol, o simplemente
49a0454bb5SCarlos Bilbaopregunte al maintainer si el árbol no está listado allí.
50a0454bb5SCarlos Bilbao
51a0454bb5SCarlos Bilbao.. _sp_describe_changes:
52a0454bb5SCarlos Bilbao
53a0454bb5SCarlos BilbaoDescriba sus cambios
54a0454bb5SCarlos Bilbao---------------------
55a0454bb5SCarlos Bilbao
56a0454bb5SCarlos BilbaoDescriba su problema. Sea su parche una corrección de un error de una
57a0454bb5SCarlos Bilbaolínea o 5000 líneas para una nuevo "feature", debe haber un problema
58a0454bb5SCarlos Bilbaosubyacente que le motivó a hacer ese trabajo. Convenza al revisor de que
59a0454bb5SCarlos Bilbaohay un problema que merece la pena solucionar y de que tiene sentido que
60a0454bb5SCarlos Bilbaolea más allá del primer párrafo.
61a0454bb5SCarlos Bilbao
62a0454bb5SCarlos BilbaoDescriba el impacto relativo al usuario. Cosas que estropeen el kernel y
63a0454bb5SCarlos Bilbaolos bloqueos son bastante convincentes, pero no todos los errores son tan
64a0454bb5SCarlos Bilbaoevidentes. Incluso si se detectó un problema durante la revisión del
65a0454bb5SCarlos Bilbaocódigo, describa el impacto que cree pueda tener en los usuarios. Tenga en
66a0454bb5SCarlos Bilbaocuenta que la mayoría de instalaciones de Linux ejecutan kernels desde
67a0454bb5SCarlos Bilbaoárboles estables secundarios o árboles específicos de proveedor/producto
68a0454bb5SCarlos Bilbaoque seleccionan ("cherry-pick") solo parches específicos de upstream, así
69a0454bb5SCarlos Bilbaoque incluya cualquier cosa que pueda ayudar a dirigir su cambio
70a0454bb5SCarlos Bilbaoaguas abajo: circunstancias que producen cierta situación, extractos de
71a0454bb5SCarlos Bilbaodmesg, descripciones del error fatal, regresiones de rendimiento, picos de
72a0454bb5SCarlos Bilbaolatencia, bloqueos, etc.
73a0454bb5SCarlos Bilbao
74a0454bb5SCarlos BilbaoCuantifique optimizaciones y beneficios/perdidas. Si asegura mejoras en
75a0454bb5SCarlos Bilbaorendimiento, consumo de memoria, huella del stack o tamaño de binario,
76a0454bb5SCarlos Bilbaoincluya números que lo respalden. Pero también describa costes no obvios.
77a0454bb5SCarlos BilbaoLas optimizaciones generalmente no son gratuitas, sino un equilibrio entre
78a0454bb5SCarlos BilbaoCPU, memoria y legibilidad; o, cuando se trata de heurísticas, entre
79a0454bb5SCarlos Bilbaodiferentes cargas de trabajo. Describa las desventajas esperadas de su
80a0454bb5SCarlos Bilbaooptimización para que el revisor pueda comparar las perdidas con los
81a0454bb5SCarlos Bilbaobeneficios.
82a0454bb5SCarlos Bilbao
83a0454bb5SCarlos BilbaoUna vez establecido el problema, describa lo que realmente está haciendo
84a0454bb5SCarlos Bilbaoal respecto en detalles técnicos. Es importante describir el cambio en
85a0454bb5SCarlos Bilbaolenguaje sencillo para que el revisor verifique que el código se está
86a0454bb5SCarlos Bilbaocomportando como se pretende.
87a0454bb5SCarlos Bilbao
88a0454bb5SCarlos BilbaoEl maintainer le agradecerá que escriba la descripción de su parche en un
89a0454bb5SCarlos Bilbaoformato que se pueda incorporar fácilmente en la gestión del código fuente
90a0454bb5SCarlos Bilbaodel sistema, ``git``, como un "commit log" (registros de los commits).
91a0454bb5SCarlos BilbaoConsulte :ref:`sp_the_canonical_patch_format`.
92a0454bb5SCarlos Bilbao
93a0454bb5SCarlos BilbaoResuelva solo un problema por parche. Si su descripción comienza a ser muy
94a0454bb5SCarlos Bilbaolarga, eso es una señal de que probablemente necesite dividir su parche.
95a0454bb5SCarlos BilbaoLea :ref:`split_changes`.
96a0454bb5SCarlos Bilbao
97a0454bb5SCarlos BilbaoCuando envíe o vuelva a enviar un parche o una serie de parches, incluya la
98a0454bb5SCarlos Bilbaodescripción completa del parche y justificación del mismo. No se limite a
99a0454bb5SCarlos Bilbaodecir que esa es la versión N del parche (serie). No espere que el
100a0454bb5SCarlos Bilbaomaintainer del subsistema referencie versiones de parches anteriores o use
101a0454bb5SCarlos Bilbaoreferencias URL para encontrar la descripción del parche y colocarla en el
102a0454bb5SCarlos Bilbaoparche. Es decir, el parche (serie) y su descripción deben ser
103a0454bb5SCarlos Bilbaoindependientes. Esto beneficia tanto a los maintainers como a los
104a0454bb5SCarlos Bilbaorevisores. Algunos revisores probablemente ni siquiera recibieran versiones
105a0454bb5SCarlos Bilbaoanteriores del parche.
106a0454bb5SCarlos Bilbao
107a0454bb5SCarlos BilbaoDescriba sus cambios en la forma imperativa, por ejemplo, "hacer que xyzzy
108a0454bb5SCarlos Bilbaohaga frotz" en lugar de "[Este parche] hace que xyzzy haga frotz" o "[Yo]
109a0454bb5SCarlos BilbaoCambié xyzzy para que haga frotz", como si estuviera dando órdenes al
110a0454bb5SCarlos Bilbaocódigo fuente para cambiar su comportamiento.
111a0454bb5SCarlos Bilbao
112a0454bb5SCarlos BilbaoSi desea hacer referencia a un commit específico, no se limite a hacer
113a0454bb5SCarlos Bilbaoreferencia al ID SHA-1 del commit. Incluya también el resumen de una línea
114a0454bb5SCarlos Bilbaodel commit, para que sea más fácil para los revisores saber de qué se
115a0454bb5SCarlos Bilbaotrata.
116a0454bb5SCarlos BilbaoEjemplo::
117a0454bb5SCarlos Bilbao
118a0454bb5SCarlos Bilbao	Commit e21d2170f36602ae2708 ("video: quitar platform_set_drvdata()
119a0454bb5SCarlos Bilbao	innecesario") eliminó innecesario platform_set_drvdata(), pero dejó la
120a0454bb5SCarlos Bilbao	variable "dev" sin usar, bórrese.
121a0454bb5SCarlos Bilbao
122a0454bb5SCarlos BilbaoTambién debe asegurarse de utilizar al menos los primeros doce caracteres
123a0454bb5SCarlos Bilbaodel identificador SHA-1. El repositorio del kernel contiene muchos *muchos*
124a0454bb5SCarlos Bilbaoobjetos, por lo que las colisiones con identificaciones más cortas son una
125a0454bb5SCarlos Bilbaoposibilidad real. Tenga en cuenta que, aunque no hay colisión con su
126a0454bb5SCarlos Bilbaoidentificación de seis caracteres ahora, esa condición puede cambiar dentro
127a0454bb5SCarlos Bilbaode cinco años.
128a0454bb5SCarlos Bilbao
129a0454bb5SCarlos BilbaoSi las discusiones relacionadas o cualquier otra información relativa al
130a0454bb5SCarlos Bilbaocambio se pueden encontrar en la web, agregue las etiquetas 'Link:' que
131a0454bb5SCarlos Bilbaoapunten a estos. En caso de que su parche corrija un error, por poner un
132a0454bb5SCarlos Bilbaoejemplo, agregue una etiqueta con una URL que haga referencia al informe en
133a0454bb5SCarlos Bilbaolos archivos de las listas de correo o un rastreador de errores; si el
134a0454bb5SCarlos Bilbaoparche es el resultado de alguna discusión anterior de la lista de correo o
135a0454bb5SCarlos Bilbaoalgo documentado en la web, referencie esto.
136a0454bb5SCarlos Bilbao
137a0454bb5SCarlos BilbaoCuando se vincule a archivos de listas de correo, preferiblemente use el
138a0454bb5SCarlos Bilbaoservicio de archivador de mensajes lore.kernel.org. Para crear la URL del
139a0454bb5SCarlos Bilbaoenlace, utilice el contenido del encabezado ("header") ``Message-Id`` del
140a0454bb5SCarlos Bilbaomensaje sin los corchetes angulares que lo rodean.
141a0454bb5SCarlos BilbaoPor ejemplo::
142a0454bb5SCarlos Bilbao
143a0454bb5SCarlos Bilbao    Link: https://lore.kernel.org/r/30th.anniversary.repost@klaava.Helsinki.FI/
144a0454bb5SCarlos Bilbao
145a0454bb5SCarlos BilbaoVerifique el enlace para asegurarse de que realmente funciona y apunta al
146a0454bb5SCarlos Bilbaomensaje correspondiente.
147a0454bb5SCarlos Bilbao
148a0454bb5SCarlos BilbaoSin embargo, intente que su explicación sea comprensible sin recursos
149a0454bb5SCarlos Bilbaoexternos. Además de dar una URL a un archivo o error de la lista de correo,
150a0454bb5SCarlos Bilbaoresuma los puntos relevantes de la discusión que condujeron al parche tal y
151a0454bb5SCarlos Bilbaocomo se envió.
152a0454bb5SCarlos Bilbao
153a0454bb5SCarlos BilbaoSi su parche corrige un error en un commit específico, por ejemplo
154a0454bb5SCarlos Bilbaoencontró un problema usando ``git bisect``, utilice la etiqueta 'Fixes:'
155a0454bb5SCarlos Bilbaocon los primeros 12 caracteres del ID SHA-1 y el resumen de una línea. No
156a0454bb5SCarlos Bilbaodivida la etiqueta en varias líneas, las etiquetas están exentas de la
157a0454bb5SCarlos Bilbaoregla "ajustar a 75 columnas" para simplificar análisis de scripts. Por
158a0454bb5SCarlos Bilbaoejemplo::
159a0454bb5SCarlos Bilbao
160a0454bb5SCarlos Bilbao	Fixes: 54a4f0239f2e ("KVM: MMU: hacer que kvm_mmu_zap_page()
161a0454bb5SCarlos Bilbao	devuelva la cantidad de páginas que realmente liberó")
162a0454bb5SCarlos Bilbao
163a0454bb5SCarlos BilbaoLas siguientes configuraciones de ``git config`` se pueden usar para
164a0454bb5SCarlos Bilbaoagregar un bonito formato y generar este estilo con los comandos
165a0454bb5SCarlos Bilbao``git log`` o ``git show``::
166a0454bb5SCarlos Bilbao
167a0454bb5SCarlos Bilbao	[core]
168a0454bb5SCarlos Bilbao		abbrev = 12
169a0454bb5SCarlos Bilbao	[pretty]
170a0454bb5SCarlos Bilbao		fixes = Fixes: %h (\"%s\")
171a0454bb5SCarlos Bilbao
172a0454bb5SCarlos BilbaoUn ejemplo de uso::
173a0454bb5SCarlos Bilbao
174a0454bb5SCarlos Bilbao	$ git log -1 --pretty=fixes 54a4f0239f2e
175a0454bb5SCarlos Bilbao	Fixes: 54a4f0239f2e ("KVM: MMU: hacer que kvm_mmu_zap_page() devuelva la cantidad de páginas que realmente liberó")
176a0454bb5SCarlos Bilbao
177a0454bb5SCarlos Bilbao.. _sp_split_changes:
178a0454bb5SCarlos Bilbao
179a0454bb5SCarlos BilbaoSepare sus cambios
180a0454bb5SCarlos Bilbao-------------------
181a0454bb5SCarlos Bilbao
182a0454bb5SCarlos BilbaoSepare cada **cambio lógico** en un parche separado.
183a0454bb5SCarlos Bilbao
184a0454bb5SCarlos BilbaoPor ejemplo, si sus cambios incluyen correcciones de errores y mejoras en
185a0454bb5SCarlos Bilbaoel rendimiento de un controlador, separe esos cambios en dos o más parches.
186a0454bb5SCarlos BilbaoSi sus cambios incluyen una actualización de la API y una nueva controlador
187a0454bb5SCarlos Bilbaoque usa esta nueva API, sepárelos en dos parches.
188a0454bb5SCarlos Bilbao
189a0454bb5SCarlos BilbaoPor otro lado, si realiza un solo cambio en numerosos archivos, agrupe esos
190a0454bb5SCarlos Bilbaocambios en un solo parche. Por lo tanto, un solo cambio lógico estará
191a0454bb5SCarlos Bilbaocontenido en un solo parche.
192a0454bb5SCarlos Bilbao
193a0454bb5SCarlos BilbaoEl punto a recordar es que cada parche debe realizar un cambio que puede
194a0454bb5SCarlos Bilbaoser verificado por los revisores fácilmente. Cada parche debe ser
195a0454bb5SCarlos Bilbaojustificable por sus propios méritos.
196a0454bb5SCarlos Bilbao
197a0454bb5SCarlos BilbaoSi un parche depende de otro parche para que un cambio sea completo, eso
198a0454bb5SCarlos Bilbaoestá bien. Simplemente incluya que **"este parche depende del parche X"**
199a0454bb5SCarlos Bilbaoen la descripción de su parche.
200a0454bb5SCarlos Bilbao
201a0454bb5SCarlos BilbaoCuando divida su cambio en una serie de parches, tenga especial cuidado en
202a0454bb5SCarlos Bilbaoasegurarse de que el kernel se compila y ejecuta correctamente después de
203a0454bb5SCarlos Bilbaocada parche en la serie. Los desarrolladores que usan ``git bisect``
204a0454bb5SCarlos Bilbaopara rastrear un problema pueden terminar dividiendo su serie de parches en
205a0454bb5SCarlos Bilbaocualquier punto; no le agradecerán si introdujo errores a la mitad.
206a0454bb5SCarlos Bilbao
207a0454bb5SCarlos BilbaoSi no puede condensar su conjunto de parches en un conjunto más pequeño de
208a0454bb5SCarlos Bilbaoparches, solo publique, más o menos 15 a la vez, y espere la revisión e
209a0454bb5SCarlos Bilbaointegración.
210a0454bb5SCarlos Bilbao
211a0454bb5SCarlos Bilbao
212a0454bb5SCarlos BilbaoRevise el estilo en sus cambios
213a0454bb5SCarlos Bilbao--------------------------------
214a0454bb5SCarlos Bilbao
215a0454bb5SCarlos BilbaoRevise su parche para ver si hay violaciones de estilo básico, cuyos
216a0454bb5SCarlos Bilbaodetalles pueden ser encontrados en Documentation/process/coding-style.rst.
217a0454bb5SCarlos BilbaoNo hacerlo simplemente desperdicia el tiempo de los revisores y su parche
218a0454bb5SCarlos Bilbaoserá rechazado, probablemente sin siquiera ser leído.
219a0454bb5SCarlos Bilbao
220a0454bb5SCarlos BilbaoUna excepción importante es cuando se mueve código de un archivo a otro.
221a0454bb5SCarlos BilbaoEn tal caso, en absoluto debe modificar el código movido en el mismo parche
222a0454bb5SCarlos Bilbaoen que lo mueve. Esto divide claramente el acto de mover el código y sus
223a0454bb5SCarlos Bilbaocambios. Esto ayuda mucho a la revisión de la diferencias reales y permite
224a0454bb5SCarlos Bilbaoque las herramientas rastreen mejor el historial del código en sí.
225a0454bb5SCarlos Bilbao
226a0454bb5SCarlos BilbaoVerifique sus parches con el verificador de estilo de parches antes de
227a0454bb5SCarlos Bilbaoenviarlos (scripts/checkpatch.pl). Tenga en cuenta, sin embargo, que el
228a0454bb5SCarlos Bilbaoverificador de estilo debe ser visto como una guía, no como un reemplazo
229a0454bb5SCarlos Bilbaodel juicio humano. Si su código es mejor con una violación entonces
230a0454bb5SCarlos Bilbaoprobablemente sea mejor dejarlo estar.
231a0454bb5SCarlos Bilbao
232a0454bb5SCarlos BilbaoEl verificador informa a tres niveles:
233a0454bb5SCarlos Bilbao - ERROR: cosas que es muy probable que estén mal
234a0454bb5SCarlos Bilbao - WARNING: Advertencia. Cosas que requieren una revisión cuidadosa
235a0454bb5SCarlos Bilbao - CHECK: Revisar. Cosas que requieren pensarlo
236a0454bb5SCarlos Bilbao
237a0454bb5SCarlos BilbaoDebe poder justificar todas las violaciones que permanezcan en su parche.
238a0454bb5SCarlos Bilbao
239a0454bb5SCarlos Bilbao
240a0454bb5SCarlos BilbaoSeleccione los destinatarios de su parche
241a0454bb5SCarlos Bilbao------------------------------------------
242a0454bb5SCarlos Bilbao
243a0454bb5SCarlos BilbaoSiempre debe incluir en copia a los apropiados maintainers del subsistema
244a0454bb5SCarlos Bilbaoen cualquier parche con código que mantengan; revise a través del archivo
245a0454bb5SCarlos BilbaoMAINTAINERS y el historial de revisión del código fuente para ver quiénes
246a0454bb5SCarlos Bilbaoson esos maintainers. El script scripts/get_maintainer.pl puede ser muy
247a0454bb5SCarlos Bilbaoútil en este paso (pase rutas a sus parches como argumentos para
248a0454bb5SCarlos Bilbaoscripts/get_maintainer.pl). Si no puede encontrar un maintainer del
249a0454bb5SCarlos Bilbaosubsistema en el que está trabajando, Andrew Morton
250a0454bb5SCarlos Bilbao(akpm@linux-foundation.org) sirve como maintainer de último recurso.
251a0454bb5SCarlos Bilbao
252a0454bb5SCarlos BilbaoNormalmente, también debe elegir al menos una lista de correo para recibir
253a0454bb5SCarlos Bilbaouna copia de su conjunto de parches. linux-kernel@vger.kernel.org debe
254a0454bb5SCarlos Bilbaousarse de forma predeterminada para todos los parches, pero el volumen en
255a0454bb5SCarlos Bilbaoesta lista ha hecho que muchos desarrolladores se desconecten. Busque en el
256a0454bb5SCarlos Bilbaoarchivo MAINTAINERS una lista específica de los subsistemas; su parche
257a0454bb5SCarlos Bilbaoprobablemente recibirá más atención allí. Sin embargo, no envíe spam a
258a0454bb5SCarlos Bilbaolistas no relacionadas.
259a0454bb5SCarlos Bilbao
260a0454bb5SCarlos BilbaoMuchas listas relacionadas con el kernel están alojadas en vger.kernel.org;
261a0454bb5SCarlos Bilbaopuedes encontrar un listado de estas en
262a0454bb5SCarlos Bilbaohttp://vger.kernel.org/vger-lists.html. Existen listas relacionadas con el
263a0454bb5SCarlos Bilbaokernel alojadas en otros lugares, no obstante.
264a0454bb5SCarlos Bilbao
265a0454bb5SCarlos Bilbao¡No envíe más de 15 parches a la vez a las listas de correo de vger!
266a0454bb5SCarlos Bilbao
267a0454bb5SCarlos BilbaoLinus Torvalds es el árbitro final de todos los cambios aceptados en el
268a0454bb5SCarlos Bilbaokernel de Linux. Su dirección de correo electrónico es
269a0454bb5SCarlos Bilbao<torvalds@linux-foundation.org>. Recibe muchos correos electrónicos y, en
270a0454bb5SCarlos Bilbaoeste momento, muy pocos parches pasan por Linus directamente, por lo que
271a0454bb5SCarlos Bilbaonormalmente debe hacer todo lo posible para -evitar- enviarle un correo
272a0454bb5SCarlos Bilbaoelectrónico.
273a0454bb5SCarlos Bilbao
274a0454bb5SCarlos BilbaoSi tiene un parche que corrige un error de seguridad explotable, envíe ese
275a0454bb5SCarlos Bilbaoparche a security@kernel.org. Para errores graves, se debe mantener un
276a0454bb5SCarlos Bilbaopoco de discreción y permitir que los distribuidores entreguen el parche a
277a0454bb5SCarlos Bilbaolos usuarios; en esos casos, obviamente, el parche no debe enviarse a
278a0454bb5SCarlos Bilbaoninguna lista pública. Revise también
279*44ac5abaSVegard NossumDocumentation/process/security-bugs.rst.
280a0454bb5SCarlos Bilbao
281a0454bb5SCarlos BilbaoLos parches que corrigen un error grave en un kernel en uso deben dirigirse
282a0454bb5SCarlos Bilbaohacia los maintainers estables poniendo una línea como esta::
283a0454bb5SCarlos Bilbao
284a0454bb5SCarlos Bilbao  CC: stable@vger.kernel.org
285a0454bb5SCarlos Bilbao
286a0454bb5SCarlos Bilbaoen el área de sign-off de su parche (es decir, NO un destinatario de correo
287a0454bb5SCarlos Bilbaoelectrónico). También debe leer
288a0454bb5SCarlos BilbaoDocumentation/process/stable-kernel-rules.rst además de este documento.
289a0454bb5SCarlos Bilbao
290a0454bb5SCarlos BilbaoSi los cambios afectan las interfaces del kernel para el usuario, envíe al
291a0454bb5SCarlos Bilbaomaintainer de las MAN-PAGES (como se indica en el archivo MAINTAINERS) un
292a0454bb5SCarlos Bilbaoparche de páginas de manual, o al menos una notificación del cambio, para
293a0454bb5SCarlos Bilbaoque alguna información se abra paso en las páginas del manual. Los cambios
294a0454bb5SCarlos Bilbaode la API del espacio de usuario también deben copiarse en
295a0454bb5SCarlos Bilbaolinux-api@vger.kernel.org.
296a0454bb5SCarlos Bilbao
297a0454bb5SCarlos Bilbao
298a0454bb5SCarlos BilbaoSin MIME, enlaces, compresión o archivos adjuntos. Solo texto plano
299a0454bb5SCarlos Bilbao--------------------------------------------------------------------
300a0454bb5SCarlos Bilbao
301a0454bb5SCarlos BilbaoLinus y otros desarrolladores del kernel deben poder leer y comentar sobre
302a0454bb5SCarlos Bilbaolos cambios que está enviando. Es importante para un desarrollador kernel
303a0454bb5SCarlos Bilbaopoder "citar" sus cambios, utilizando herramientas estándar de correo
304a0454bb5SCarlos Bilbaoelectrónico, de modo que puedan comentar sobre partes específicas de su
305a0454bb5SCarlos Bilbaocódigo.
306a0454bb5SCarlos Bilbao
307a0454bb5SCarlos BilbaoPor este motivo, todos los parches deben enviarse por correo electrónico
308a0454bb5SCarlos Bilbao"inline". La forma más sencilla de hacerlo es con ``git send-email``, que
309a0454bb5SCarlos Bilbaoes muy recomendable. Un tutorial interactivo para ``git send-email`` está
310a0454bb5SCarlos Bilbaodisponible en https://git-send-email.io.
311a0454bb5SCarlos Bilbao
312a0454bb5SCarlos BilbaoSi elige no usar ``git send-email``:
313a0454bb5SCarlos Bilbao
314a0454bb5SCarlos Bilbao.. warning::
315a0454bb5SCarlos Bilbao
316a0454bb5SCarlos Bilbao  Tenga cuidado con el ajuste de palabras de su editor que corrompe su
317a0454bb5SCarlos Bilbao  parche, si elige cortar y pegar su parche.
318a0454bb5SCarlos Bilbao
319a0454bb5SCarlos BilbaoNo adjunte el parche como un archivo adjunto MIME, comprimido o no. Muchas
320a0454bb5SCarlos Bilbaopopulares aplicaciones de correo electrónico no siempre transmiten un MIME
321a0454bb5SCarlos Bilbaoarchivo adjunto como texto sin formato, por lo que es imposible comentar
322a0454bb5SCarlos Bilbaoen su código. Linus también necesita un poco más de tiempo para procesar un
323a0454bb5SCarlos Bilbaoarchivo adjunto MIME, disminuyendo la probabilidad de que se acepte su
324a0454bb5SCarlos Bilbaocambio adjunto en MIME.
325a0454bb5SCarlos Bilbao
326a0454bb5SCarlos BilbaoExcepción: si su proveedor de correo está destrozando parches, entonces
327a0454bb5SCarlos Bilbaoalguien puede pedir que los vuelva a enviar usando MIME.
328a0454bb5SCarlos Bilbao
329a0454bb5SCarlos BilbaoConsulte Documentation/process/email-clients.rst para obtener sugerencias
330a0454bb5SCarlos Bilbaosobre cómo configurar su cliente de correo electrónico para que envíe sus
331a0454bb5SCarlos Bilbaoparches intactos.
332a0454bb5SCarlos Bilbao
333a0454bb5SCarlos BilbaoResponda a los comentarios de revisión
334a0454bb5SCarlos Bilbao---------------------------------------
335a0454bb5SCarlos Bilbao
336a0454bb5SCarlos BilbaoEs casi seguro que su parche recibirá comentarios de los revisores sobre
337a0454bb5SCarlos Bilbaomaneras en que se pueda mejorar el parche, en forma de respuesta a su
338a0454bb5SCarlos Bilbaocorreo electrónico. Debe responder a esos comentarios; ignorar a los
339a0454bb5SCarlos Bilbaorevisores es una buena manera de ser ignorado de vuelta. Simplemente puede
340a0454bb5SCarlos Bilbaoresponder a sus correos electrónicos para contestar a sus comentarios.
341a0454bb5SCarlos BilbaoRevisiones a los comentarios o preguntas que no conduzcan a un cambio de
342a0454bb5SCarlos Bilbaocódigo deben casi con certeza generar un comentario o una entrada en el
343a0454bb5SCarlos Bilbao"changelog" para que el próximo revisor entienda lo que está pasando.
344a0454bb5SCarlos Bilbao
345a0454bb5SCarlos BilbaoAsegúrese de decirles a los revisores qué cambios está haciendo y de
346a0454bb5SCarlos Bilbaoagradecerles que dediquen su tiempo. La revisión del código es un proceso
347a0454bb5SCarlos Bilbaoagotador y lento, y los revisores a veces se ponen de mal humor. Sin
348a0454bb5SCarlos Bilbaoembargo, incluso en ese caso, responda cortésmente y aborde los problemas
349a0454bb5SCarlos Bilbaoque hayan señalado. Al enviar un siguiente versión, agregue un
350a0454bb5SCarlos Bilbao``patch changelog`` (registro de cambios en los parches) a la carta de
351a0454bb5SCarlos Bilbaopresentación ("cover letter") o a parches individuales explicando la
352a0454bb5SCarlos Bilbaodiferencia con la presentación anterior (ver
353a0454bb5SCarlos Bilbao:ref:`sp_the_canonical_patch_format`).
354a0454bb5SCarlos Bilbao
355a0454bb5SCarlos BilbaoConsulte Documentation/process/email-clients.rst para obtener
356a0454bb5SCarlos Bilbaorecomendaciones sobre clientes de correo electrónico y normas de etiqueta
357a0454bb5SCarlos Bilbaoen la lista de correo.
358a0454bb5SCarlos Bilbao
359a0454bb5SCarlos Bilbao.. _sp_resend_reminders:
360a0454bb5SCarlos Bilbao
361a0454bb5SCarlos BilbaoNo se desanime o impaciente
362a0454bb5SCarlos Bilbao---------------------------
363a0454bb5SCarlos Bilbao
364a0454bb5SCarlos BilbaoDespués de haber entregado su cambio, sea paciente y espere. Los revisores
365a0454bb5SCarlos Bilbaoson personas ocupadas y es posible que no lleguen a su parche de inmediato.
366a0454bb5SCarlos Bilbao
367a0454bb5SCarlos BilbaoÉrase una vez, los parches solían desaparecer en el vacío sin comentarios,
368a0454bb5SCarlos Bilbaopero el proceso de desarrollo funciona mejor que eso ahora. Debería
369a0454bb5SCarlos Bilbaorecibir comentarios dentro de una semana más o menos; si eso no sucede,
370a0454bb5SCarlos Bilbaoasegúrese de que ha enviado sus parches al lugar correcto. Espere un mínimo
371a0454bb5SCarlos Bilbaode una semana antes de volver a enviar o hacer ping a los revisores,
372a0454bb5SCarlos Bilbaoposiblemente más durante periodos de mucho trabajo ocupados como "merge
373a0454bb5SCarlos Bilbaowindows".
374a0454bb5SCarlos Bilbao
375a0454bb5SCarlos BilbaoTambién está bien volver a enviar el parche o la serie de parches después
376a0454bb5SCarlos Bilbaode un par de semanas con la palabra "RESEND" (reenviar) añadida a la línea
377a0454bb5SCarlos Bilbaode asunto::
378a0454bb5SCarlos Bilbao
379a0454bb5SCarlos Bilbao   [PATCH Vx RESEND] sub/sys: Resumen condensado de parche
380a0454bb5SCarlos Bilbao
381a0454bb5SCarlos BilbaoNo incluya "RESEND" cuando envíe una versión modificada de su parche o
382a0454bb5SCarlos Bilbaoserie de parches: "RESEND" solo se aplica al reenvío de un parche o serie
383a0454bb5SCarlos Bilbaode parches que no hayan sido modificados de ninguna manera con respecto a
384a0454bb5SCarlos Bilbaola presentación anterior.
385a0454bb5SCarlos Bilbao
386a0454bb5SCarlos Bilbao
387a0454bb5SCarlos BilbaoIncluya PATCH en el asunto
388a0454bb5SCarlos Bilbao--------------------------
389a0454bb5SCarlos Bilbao
390a0454bb5SCarlos BilbaoDebido al alto tráfico de correo electrónico a Linus y al kernel de Linux,
391a0454bb5SCarlos Bilbaoes común prefijar su línea de asunto con [PATCH]. Esto le permite a Linus
392a0454bb5SCarlos Bilbaoy otros desarrolladores del kernel distinguir más fácilmente los parches de
393a0454bb5SCarlos Bilbaootras discusiones por correo electrónico.
394a0454bb5SCarlos Bilbao
395a0454bb5SCarlos Bilbao``git send-email`` lo hará automáticamente.
396a0454bb5SCarlos Bilbao
397a0454bb5SCarlos Bilbao
398a0454bb5SCarlos BilbaoFirme su trabajo: el Certificado de Origen del Desarrollador
399a0454bb5SCarlos Bilbao------------------------------------------------------------
400a0454bb5SCarlos Bilbao
401a0454bb5SCarlos BilbaoPara mejorar el seguimiento de quién hizo qué, especialmente con parches
402a0454bb5SCarlos Bilbaoque pueden filtrarse hasta su destino final a través de varias capas de
403a0454bb5SCarlos Bilbaomaintainers, hemos introducido un procedimiento de "sign-off" (aprobación)
404a0454bb5SCarlos Bilbaoen parches que se envían por correo electrónico.
405a0454bb5SCarlos Bilbao
406a0454bb5SCarlos BilbaoLa aprobación es una simple línea al final de la explicación del parche,
407a0454bb5SCarlos Bilbaoque certifica que usted lo escribió o que tiene derecho a enviarlo como un
408a0454bb5SCarlos Bilbaoparche de código abierto. Las reglas son bastante simples: si usted puede
409a0454bb5SCarlos Bilbaocertificar lo siguiente:
410a0454bb5SCarlos Bilbao
411a0454bb5SCarlos BilbaoCertificado de Origen del Desarrollador 1.1
412a0454bb5SCarlos Bilbao^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
413a0454bb5SCarlos Bilbao
414a0454bb5SCarlos BilbaoAl hacer una contribución a este proyecto, certifico que:
415a0454bb5SCarlos Bilbao
416a0454bb5SCarlos Bilbao        (a) La contribución fue creada en su totalidad o en parte por mí y
417a0454bb5SCarlos Bilbao            tengo derecho a enviarlo bajo la licencia de código abierto
418a0454bb5SCarlos Bilbao            indicada en el documento; o
419a0454bb5SCarlos Bilbao
420a0454bb5SCarlos Bilbao        (b) La contribución se basa en trabajo previo que, hasta donde yo
421a0454bb5SCarlos Bilbao            soy consciente, está cubierto por una licencia de código
422a0454bb5SCarlos Bilbao            abierto apropiada y tengo el derecho bajo esa licencia de
423a0454bb5SCarlos Bilbao            presentar tal trabajo con modificaciones, ya sean creadas en su
424a0454bb5SCarlos Bilbao            totalidad o en parte por mí, bajo la misma licencia de código
425a0454bb5SCarlos Bilbao            (salvo que sea permitido presentar bajo una licencia diferente),
426a0454bb5SCarlos Bilbao            tal y como se indica en el documento; o
427a0454bb5SCarlos Bilbao
428a0454bb5SCarlos Bilbao        (c) La contribución me fue proporcionada directamente por alguna
429a0454bb5SCarlos Bilbao            otra persona que certificó (a), (b) o (c) y no he modificado
430a0454bb5SCarlos Bilbao            esto.
431a0454bb5SCarlos Bilbao
432a0454bb5SCarlos Bilbao        (d) Entiendo y acepto que este proyecto y la contribución
433a0454bb5SCarlos Bilbao            son públicos y que un registro de la contribución (incluyendo
434a0454bb5SCarlos Bilbao            toda la información personal que envío con él, incluida mi
435a0454bb5SCarlos Bilbao            firma) es mantenida indefinidamente y puede ser redistribuida
436a0454bb5SCarlos Bilbao            de manera consistente con este proyecto o la(s) licencia(s) de
437a0454bb5SCarlos Bilbao            código abierto involucradas.
438a0454bb5SCarlos Bilbao
439a0454bb5SCarlos Bilbaoentonces simplemente incluya una línea que rece::
440a0454bb5SCarlos Bilbao
441a0454bb5SCarlos Bilbao	Signed-off-by: Random J Developer <random@developer.example.org>
442a0454bb5SCarlos Bilbao
443a0454bb5SCarlos Bilbaousando su nombre real (lamentablemente, no pseudónimos ni contribuciones
444a0454bb5SCarlos Bilbaoanónimas). Esto se hará por usted automáticamente si usa ``git commit -s``.
445a0454bb5SCarlos BilbaoLas reversiones de código también deben incluir "Signed-off-by".
446a0454bb5SCarlos Bilbao``git revert -s`` hace eso por usted.
447a0454bb5SCarlos Bilbao
448a0454bb5SCarlos BilbaoAlgunas personas también ponen etiquetas adicionales al final. Simplemente
449a0454bb5SCarlos Bilbaoserán ignoradas por ahora, pero puede hacer esto para marcar procedimientos
450a0454bb5SCarlos Bilbaointernos de su empresa o simplemente señalar algún detalle especial sobre
451a0454bb5SCarlos Bilbaola firma.
452a0454bb5SCarlos Bilbao
453a0454bb5SCarlos BilbaoCualquier otro SoB (Signed-off-by:) después del SoB del autor es de
454a0454bb5SCarlos Bilbaopersonas que manipulen y transporten el parche, pero no participaron en su
455a0454bb5SCarlos Bilbaodesarrollo. Las cadenas de SoB deben reflejar la ruta **real** del parche
456a0454bb5SCarlos Bilbaode cómo se propagó a los maintainers y, en última instancia, a Linus, con
457a0454bb5SCarlos Bilbaola primera entrada de SoB que señala la autoría principal de un solo autor.
458a0454bb5SCarlos Bilbao
459a0454bb5SCarlos Bilbao
460a0454bb5SCarlos BilbaoCuándo usar Acked-by:, Cc: y Co-developed-by por:
461a0454bb5SCarlos Bilbao-------------------------------------------------
462a0454bb5SCarlos Bilbao
463a0454bb5SCarlos BilbaoLa etiqueta Signed-off-by: indica que el firmante estuvo involucrado en el
464a0454bb5SCarlos Bilbaodesarrollo del parche, o que él/ella se encontraba en el camino de entrega
465a0454bb5SCarlos Bilbaodel parche.
466a0454bb5SCarlos Bilbao
467a0454bb5SCarlos BilbaoSi una persona no estuvo directamente involucrada en la preparación o
468a0454bb5SCarlos Bilbaoadministración de un parche pero desea expresar y registrar su aprobación,
469a0454bb5SCarlos Bilbaoentonces puede pedir que se agregue una línea Acked-by: al registro de
470a0454bb5SCarlos Bilbaocambios del parche.
471a0454bb5SCarlos Bilbao
472a0454bb5SCarlos BilbaoAcked-by: a menudo lo usa el maintainer del código afectado cuando ese
473a0454bb5SCarlos Bilbaomaintainer no contribuyó ni envió el parche.
474a0454bb5SCarlos Bilbao
475a0454bb5SCarlos BilbaoAcked-by: no es tan formal como Signed-off-by:. Es una manera de marcar que
476a0454bb5SCarlos Bilbaoel "acker" ha revisado al menos ese parche y ha indicado su aceptación. Por
477a0454bb5SCarlos Bilbaolos merge de parches a veces convertirán manualmente el "sí, me parece bien"
478a0454bb5SCarlos Bilbaode un acker en un Acked-by: (pero tenga en cuenta que por lo general es
479a0454bb5SCarlos Bilbaomejor pedir un acuse de recibo explícito).
480a0454bb5SCarlos Bilbao
481a0454bb5SCarlos BilbaoAcked-by: no necesariamente indica el reconocimiento de todo el parche.
482a0454bb5SCarlos BilbaoPor ejemplo, si un parche afecta a varios subsistemas y tiene un
483a0454bb5SCarlos BilbaoAcked-by: de un maintainer del subsistema, entonces esto generalmente
484a0454bb5SCarlos Bilbaoindica el reconocimiento de solo la parte que afecta el código de ese
485a0454bb5SCarlos Bilbaomaintainer. Buen juicio debe ejercitarse aquí. En caso de duda, la gente
486a0454bb5SCarlos Bilbaodebe consultar la discusión original en los archivos de la lista de correo.
487a0454bb5SCarlos Bilbao
488a0454bb5SCarlos BilbaoSi una persona ha tenido la oportunidad de comentar un parche, pero no lo
489a0454bb5SCarlos Bilbaoha hecho, puede incluir opcionalmente una etiqueta ``Cc:`` al parche.
490a0454bb5SCarlos BilbaoEsta es la única etiqueta que se puede agregar sin una acción explícita por
491a0454bb5SCarlos Bilbaoparte de la persona a la que se nombre - pero debe indicar que esta persona
492a0454bb5SCarlos Bilbaofue copiada en el parche. Esta etiqueta documenta que las partes
493a0454bb5SCarlos Bilbaopotencialmente interesadas han sido incluidas en la discusión.
494a0454bb5SCarlos Bilbao
495a0454bb5SCarlos BilbaoCo-developed-by: establece que el parche fue co-creado por múltiples
496a0454bb5SCarlos Bilbaodesarrolladores; se utiliza para dar atribución a los coautores (además del
497a0454bb5SCarlos Bilbaoautor atribuido por la etiqueta From:) cuando varias personas trabajan en
498a0454bb5SCarlos Bilbaoun solo parche. Ya que Co-developed-by: denota autoría, cada
499a0454bb5SCarlos BilbaoCo-developed-by: debe ser inmediatamente seguido de Signed-off-by: del
500a0454bb5SCarlos Bilbaocoautor asociado. Se mantiene el procedimiento estándar, es decir, el orden
501a0454bb5SCarlos Bilbaode las etiquetas Signed-off-by: debe reflejar el historial cronológico del
502a0454bb5SCarlos Bilbaoparche en la medida de lo posible, independientemente de si el autor se
503a0454bb5SCarlos Bilbaoatribuye a través de From: o Co-developed-by:. Cabe destacar que el último
504a0454bb5SCarlos BilbaoSigned-off-by: siempre debe ser del desarrollador que envía el parche.
505a0454bb5SCarlos Bilbao
506a0454bb5SCarlos BilbaoTenga en cuenta que la etiqueta From: es opcional cuando el autor From: es
507a0454bb5SCarlos Bilbaotambién la persona (y correo electrónico) enumerados en la línea From: del
508a0454bb5SCarlos Bilbaoencabezado del correo electrónico.
509a0454bb5SCarlos Bilbao
510a0454bb5SCarlos BilbaoEjemplo de un parche enviado por el From: autor::
511a0454bb5SCarlos Bilbao
512a0454bb5SCarlos Bilbao	<changelog>
513a0454bb5SCarlos Bilbao
514a0454bb5SCarlos Bilbao	Co-developed-by: Primer coautor <primer@coauthor.example.org>
515a0454bb5SCarlos Bilbao	Signed-off-by: Primer coautor <primer@coauthor.example.org>
516a0454bb5SCarlos Bilbao	Co-developed-by: Segundo coautor <segundo@coautor.ejemplo.org>
517a0454bb5SCarlos Bilbao	Signed-off-by: Segundo coautor <segundo@coautor.ejemplo.org>
518a0454bb5SCarlos Bilbao	Signed-off-by: Autor del From <from@author.example.org>
519a0454bb5SCarlos Bilbao
520a0454bb5SCarlos BilbaoEjemplo de un parche enviado por un Co-developed-by: autor::
521a0454bb5SCarlos Bilbao
522a0454bb5SCarlos Bilbao	From: Autor del From <from@author.example.org>
523a0454bb5SCarlos Bilbao
524a0454bb5SCarlos Bilbao	<changelog>
525a0454bb5SCarlos Bilbao
526a0454bb5SCarlos Bilbao	Co-developed-by: Co-Autor aleatorio <aleatorio@coauthor.example.org>
527a0454bb5SCarlos Bilbao	Signed-off-by: Coautor aleatorio <aleatorio@coauthor.example.org>
528a0454bb5SCarlos Bilbao	Signed-off-by: Autor del From <from@author.example.org>
529a0454bb5SCarlos Bilbao	Co-developed-by: Coautor que envió <sub@coauthor.example.org>
530a0454bb5SCarlos Bilbao	Signed-off-by: Coautor que envía <sub@coauthor.example.org>
531a0454bb5SCarlos Bilbao
532a0454bb5SCarlos BilbaoUso de Reported-by:, Tested-by:, Reviewed-by:, Suggested-by: y Fixes:
533a0454bb5SCarlos Bilbao----------------------------------------------------------------------
534a0454bb5SCarlos Bilbao
535a0454bb5SCarlos BilbaoLa etiqueta Reported-by (Reportado-por) otorga crédito a las personas que
536a0454bb5SCarlos Bilbaoencuentran errores y los reportan. Por favor, tenga en cuenta que si se
537a0454bb5SCarlos Bilbaoinformó de un error en privado, debe pedir primero permiso antes de usar la
538a0454bb5SCarlos Bilbaoetiqueta Reported-by. La etiqueta está destinada a errores; por favor no la
539a0454bb5SCarlos Bilbaouse para acreditar peticiones de características.
540a0454bb5SCarlos Bilbao
541a0454bb5SCarlos BilbaoUna etiqueta Tested-by: indica que el parche se probó con éxito (en algún
542a0454bb5SCarlos Bilbaoentorno) por la persona nombrada. Esta etiqueta informa a los maintainers
543a0454bb5SCarlos Bilbaode que se han realizado algunas pruebas, proporciona un medio para ubicar
544a0454bb5SCarlos Bilbao"testers" (gente que pruebe) otros parches futuros y asegura el crédito
545a0454bb5SCarlos Bilbaopara los testers.
546a0454bb5SCarlos Bilbao
547a0454bb5SCarlos BilbaoReviewed-by: en cambio, indica que el parche ha sido revisado y encontrado
548a0454bb5SCarlos Bilbaoaceptable de acuerdo con la Declaración del Revisor:
549a0454bb5SCarlos Bilbao
550a0454bb5SCarlos BilbaoDeclaración de Supervisión del Revisor
551a0454bb5SCarlos Bilbao^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
552a0454bb5SCarlos Bilbao
553a0454bb5SCarlos BilbaoAl ofrecer mi etiqueta Reviewed-by:, afirmo que:
554a0454bb5SCarlos Bilbao
555a0454bb5SCarlos Bilbao(a) He llevado a cabo una revisión técnica de este parche para
556a0454bb5SCarlos Bilbaoevaluar su idoneidad y preparación para su inclusión en
557a0454bb5SCarlos Bilbaoel kernel principal.
558a0454bb5SCarlos Bilbao
559a0454bb5SCarlos Bilbao(b) Cualquier problema, inquietud o pregunta relacionada con el parche
560a0454bb5SCarlos Bilbaohan sido comunicados al remitente. Estoy satisfecho
561a0454bb5SCarlos Bilbaocon la respuesta del remitente a mis comentarios.
562a0454bb5SCarlos Bilbao
563a0454bb5SCarlos Bilbao(c) Si bien puede haber cosas que podrían mejorarse con esta
564a0454bb5SCarlos Bilbaoentrega, creo que es, en este momento, (1) una
565a0454bb5SCarlos Bilbaomodificación valiosa al kernel, y (2) libre de conocidas
566a0454bb5SCarlos Bilbaocuestiones que argumentarían en contra de su inclusión.
567a0454bb5SCarlos Bilbao
568a0454bb5SCarlos Bilbao(d) Si bien he revisado el parche y creo que es correcto,
569a0454bb5SCarlos Bilbaono hago (a menos que se indique explícitamente en otro lugar) ninguna
570a0454bb5SCarlos Bilbaogarantía o avales de que logrará su definido
571a0454bb5SCarlos Bilbaopropósito o función en cualquier situación dada.
572a0454bb5SCarlos Bilbao
573a0454bb5SCarlos BilbaoUna etiqueta Reviewed-by es una declaración de opinión de que el parche es
574a0454bb5SCarlos Bilbaouna modificación apropiada al kernel sin que haya ningún problema grave
575a0454bb5SCarlos Bilbaoa nivel técnico. Cualquier revisor interesado (que haya hecho el trabajo)
576a0454bb5SCarlos Bilbaopuede ofrecer una etiqueta Reviewed-by para un parche. Esta etiqueta sirve
577a0454bb5SCarlos Bilbaopara dar crédito a revisores e informar a los maintainers del grado de
578a0454bb5SCarlos Bilbaorevisión que se ha hecho en el parche. Las etiquetas Reviewed-by, cuando
579a0454bb5SCarlos Bilbaolas otorgan revisores conocidos por entender del tema y realizar
580a0454bb5SCarlos Bilbaorevisiones exhaustivas, normalmente aumentan la probabilidad de que su
581a0454bb5SCarlos Bilbaoparche entre en el kernel.
582a0454bb5SCarlos Bilbao
583a0454bb5SCarlos BilbaoLas etiquetas Tested-by y Reviewed-by, una vez recibidas en la lista de
584a0454bb5SCarlos Bilbaocorreo por el tester o revisor, deben ser incluidas por el autor de los
585a0454bb5SCarlos Bilbaoparches pertinentes al enviar próximas versiones. Sin embargo, si el parche
586a0454bb5SCarlos Bilbaoha cambiado sustancialmente en la siguiente versión, es posible que estas
587a0454bb5SCarlos Bilbaoetiquetas ya no sean aplicables y, por lo tanto, deben eliminarse. Por lo
588a0454bb5SCarlos Bilbaogeneral, se debe mencionar la eliminación de las etiquetas Tested-by o
589a0454bb5SCarlos BilbaoReviewed-by de alguien en el registro de cambios del parche (después del
590a0454bb5SCarlos Bilbaoseparador '---').
591a0454bb5SCarlos Bilbao
592a0454bb5SCarlos BilbaoUna etiqueta Suggested-by: indica que la idea del parche es sugerida por la
593a0454bb5SCarlos Bilbaopersona nombrada y asegura el crédito a la persona por la idea. Tenga en
594a0454bb5SCarlos Bilbaocuenta que esto no debe agregarse sin el permiso del "reporter",
595a0454bb5SCarlos Bilbaoespecialmente si la idea no fue publicada en un foro público. Dicho esto,
596a0454bb5SCarlos Bilbaosi diligentemente acreditamos a los reporters de ideas, con suerte, se
597a0454bb5SCarlos Bilbaosentirán inspirados para ayudarnos nuevamente en el futuro.
598a0454bb5SCarlos Bilbao
599a0454bb5SCarlos BilbaoUna etiqueta Fixes: indica que el parche corrige un problema en un commit
600a0454bb5SCarlos Bilbaoanterior. Esto se utiliza para facilitar descubrir dónde se originó un
601a0454bb5SCarlos Bilbaoerror, lo que puede ayudar a revisar una corrección de errores. Esta
602a0454bb5SCarlos Bilbaoetiqueta también ayuda al equipo del kernel estable a determinar qué
603a0454bb5SCarlos Bilbaoversiones estables del kernel deberían recibir su corrección. Este es el
604a0454bb5SCarlos Bilbaométodo preferido para indicar un error corregido por el parche. Revise
605a0454bb5SCarlos Bilbao:ref:`describe_changes` para más detalles.
606a0454bb5SCarlos Bilbao
607a0454bb5SCarlos BilbaoNota: Adjuntar una etiqueta Fixes: no subvierte las reglas estables del
608a0454bb5SCarlos Bilbaoproceso del kernel ni el requisito de CC: stable@vger.kernel.org en todos
609a0454bb5SCarlos Bilbaolos parches candidatos de ramas estables. Para obtener más información, lea
610a0454bb5SCarlos BilbaoDocumentation/process/stable-kernel-rules.rst.
611a0454bb5SCarlos Bilbao
612a0454bb5SCarlos Bilbao.. _sp_the_canonical_patch_format:
613a0454bb5SCarlos Bilbao
614a0454bb5SCarlos BilbaoFormato de parche canónico
615a0454bb5SCarlos Bilbao---------------------------
616a0454bb5SCarlos Bilbao
617a0454bb5SCarlos BilbaoEsta sección describe cómo debe darse formato al propio parche. Tenga en
618a0454bb5SCarlos Bilbaocuenta que, si tiene sus parches almacenados en un repositorio ``git``, el
619a0454bb5SCarlos Bilbaoparche con formato adecuado se puede obtener con ``git format-patch``. Las
620a0454bb5SCarlos Bilbaoherramientas no pueden crear el texto necesario, sin embargo, así que lea
621a0454bb5SCarlos Bilbaolas instrucciones a continuación de todos modos.
622a0454bb5SCarlos Bilbao
623a0454bb5SCarlos BilbaoLa línea de asunto del parche canónico es::
624a0454bb5SCarlos Bilbao
625a0454bb5SCarlos Bilbao    Asunto: [PATCH 001/123] subsistema: frase de resumen
626a0454bb5SCarlos Bilbao
627a0454bb5SCarlos BilbaoEl cuerpo del mensaje del parche canónico contiene lo siguiente:
628a0454bb5SCarlos Bilbao
629a0454bb5SCarlos Bilbao  - Una línea ``from`` que especifica el autor del parche, seguida de una
630a0454bb5SCarlos Bilbao    línea vacía (solo es necesario si la persona que envía el parche no es
631a0454bb5SCarlos Bilbao    el autor).
632a0454bb5SCarlos Bilbao
633a0454bb5SCarlos Bilbao  - El cuerpo de la explicación, línea envuelta en 75 columnas, que se
634a0454bb5SCarlos Bilbao    copiara en el registro de cambios permanente para describir este parche.
635a0454bb5SCarlos Bilbao
636a0454bb5SCarlos Bilbao  - Una línea vacía.
637a0454bb5SCarlos Bilbao
638a0454bb5SCarlos Bilbao  - Las líneas ``Signed-off-by:``, descritas anteriormente, que
639a0454bb5SCarlos Bilbao    también vaya en el registro de cambios.
640a0454bb5SCarlos Bilbao
641a0454bb5SCarlos Bilbao  - Una línea de marcador que contiene simplemente ``---``.
642a0454bb5SCarlos Bilbao
643a0454bb5SCarlos Bilbao  - Cualquier comentario adicional que no sea adecuado para el registro de
644a0454bb5SCarlos Bilbao    cambios.
645a0454bb5SCarlos Bilbao
646a0454bb5SCarlos Bilbao  - El parche real (output de ``diff``).
647a0454bb5SCarlos Bilbao
648a0454bb5SCarlos BilbaoEl formato de la línea de asunto hace que sea muy fácil ordenar los correos
649a0454bb5SCarlos Bilbaoelectrónicos alfabéticamente por línea de asunto - prácticamente cualquier
650a0454bb5SCarlos Bilbaolector de correo electrónico permite esto, ya que debido a que el número de
651a0454bb5SCarlos Bilbaosecuencia se rellena con ceros, el orden numérico y alfabético es el mismo.
652a0454bb5SCarlos Bilbao
653a0454bb5SCarlos BilbaoEl ``subsistema`` en el asunto del correo electrónico debe identificar qué
654a0454bb5SCarlos Bilbaoárea o subsistema del kernel está siendo parcheado.
655a0454bb5SCarlos Bilbao
656a0454bb5SCarlos BilbaoLa ``frase de resumen`` en el Asunto del correo electrónico debe describir
657a0454bb5SCarlos Bilbaode forma concisa el parche que contiene ese correo electrónico. La
658a0454bb5SCarlos Bilbao``frase resumen`` no debe ser un nombre de archivo. No use la mismo ``frase
659a0454bb5SCarlos Bilbaoresumen`` para cada parche en una serie completa de parches (donde una
660a0454bb5SCarlos Bilbao`` serie de parches`` (patch series) es una secuencia ordenada de múltiples
661a0454bb5SCarlos Bilbaoparches relacionados).
662a0454bb5SCarlos Bilbao
663a0454bb5SCarlos BilbaoTenga en cuenta que la ``frase de resumen`` de su correo electrónico se
664a0454bb5SCarlos Bilbaoconvierte en un identificador global único para ese parche. Se propaga por
665a0454bb5SCarlos Bilbaohasta el registro de cambios de ``git``. La ``frase resumida`` se puede
666a0454bb5SCarlos Bilbaousar más adelante en discusiones de desarrolladores que se refieran al
667a0454bb5SCarlos Bilbaoparche. La gente querrá buscar en Google la ``frase de resumen`` para leer
668a0454bb5SCarlos Bilbaola discusión al respecto del parche. También será lo único que la gente
669a0454bb5SCarlos Bilbaopodrá ver rápidamente cuando, dos o tres meses después, estén pasando por
670a0454bb5SCarlos Bilbaoquizás miles de parches usando herramientas como ``gitk`` o ``git log
671a0454bb5SCarlos Bilbao--oneline``.
672a0454bb5SCarlos Bilbao
673a0454bb5SCarlos BilbaoPor estas razones, el ``resumen`` no debe tener más de 70-75 caracteres, y
674a0454bb5SCarlos Bilbaodebe describir tanto lo que cambia el parche como por qué el parche podría
675a0454bb5SCarlos Bilbaoser necesario. Es un reto ser tanto sucinto como descriptivo, pero eso es
676a0454bb5SCarlos Bilbaolo que un resumen bien escrito debería hacer.
677a0454bb5SCarlos Bilbao
678a0454bb5SCarlos BilbaoLa ``frase de resumen`` puede estar precedida por etiquetas encerradas en
679a0454bb5SCarlos Bilbaocorchetes: "Asunto: [PATCH <etiqueta>...] <frase de resumen>". Las
680a0454bb5SCarlos Bilbaoetiquetas no se consideran parte de la frase de resumen, pero describen
681a0454bb5SCarlos Bilbaocómo debería ser tratado el parche. Las etiquetas comunes pueden incluir un
682a0454bb5SCarlos Bilbaodescriptor de versión si las múltiples versiones del parche se han enviado
683a0454bb5SCarlos Bilbaoen respuesta a comentarios (es decir, "v1, v2, v3") o "RFC" para indicar
684a0454bb5SCarlos Bilbaouna solicitud de comentarios.
685a0454bb5SCarlos Bilbao
686a0454bb5SCarlos BilbaoSi hay cuatro parches en una serie de parches, los parches individuales
687a0454bb5SCarlos Bilbaopueden enumerarse así: 1/4, 2/4, 3/4, 4/4. Esto asegura que los
688a0454bb5SCarlos Bilbaodesarrolladores entiendan el orden en que se deben aplicar los parches y
689a0454bb5SCarlos Bilbaoque han revisado o aplicado todos los parches de la serie de parches.
690a0454bb5SCarlos Bilbao
691a0454bb5SCarlos BilbaoAquí hay algunos buenos ejemplos de Asuntos::
692a0454bb5SCarlos Bilbao
693a0454bb5SCarlos Bilbao    Asunto: [PATCH 2/5] ext2: mejorar la escalabilidad de la búsqueda de mapas de bits
694a0454bb5SCarlos Bilbao    Asunto: [PATCH v2 27/01] x86: corregir el seguimiento de eflags
695a0454bb5SCarlos Bilbao    Asunto: [PATCH v2] sub/sys: resumen conciso del parche
696a0454bb5SCarlos Bilbao    Asunto: [PATCH v2 M/N] sub/sys: resumen conciso del parche
697a0454bb5SCarlos Bilbao
698a0454bb5SCarlos BilbaoLa línea ``from`` debe ser la primera línea en el cuerpo del mensaje,
699a0454bb5SCarlos Bilbaoy tiene la forma::
700a0454bb5SCarlos Bilbao
701a0454bb5SCarlos Bilbao        From: Autor del parche <autor@ejemplo.com>
702a0454bb5SCarlos Bilbao
703a0454bb5SCarlos BilbaoLa línea ``From`` especifica quién será acreditado como el autor del parche
704a0454bb5SCarlos Bilbaoen el registro de cambios permanente. Si falta la línea ``from``, entonces
705a0454bb5SCarlos Bilbaola línea ``From:`` del encabezado del correo electrónico se usará para
706a0454bb5SCarlos Bilbaodeterminar el autor del parche en el registro de cambios.
707a0454bb5SCarlos Bilbao
708a0454bb5SCarlos BilbaoLa explicación estará incluida en el commit del changelog permanente, por
709a0454bb5SCarlos Bilbaolo que debería tener sentido para un lector competente que hace mucho tiempo
710a0454bb5SCarlos Bilbaoha olvidado los detalles de la discusión que podrían haber llevado a
711a0454bb5SCarlos Bilbaoeste parche. Incluidos los síntomas del fallo que el parche trate
712a0454bb5SCarlos Bilbao(mensajes de registro del kernel, mensajes de oops, etc.) son especialmente
713a0454bb5SCarlos Bilbaoútiles para personas que podrían estar buscando en los registros de
714a0454bb5SCarlos Bilbaocommits en busca de la aplicación del parche. El texto debe estar escrito
715a0454bb5SCarlos Bilbaocon tal detalle que cuando se lea semanas, meses o incluso años después,
716a0454bb5SCarlos Bilbaopueda dar al lector la información necesaria y detalles para comprender el
717a0454bb5SCarlos Bilbaorazonamiento de **por qué** se creó el parche.
718a0454bb5SCarlos Bilbao
719a0454bb5SCarlos BilbaoSi un parche corrige una falla de compilación, puede que no sea necesario
720a0454bb5SCarlos Bilbaoincluir _todos_ los errores de compilación; pero lo suficiente como para
721a0454bb5SCarlos Bilbaoque sea probable que alguien que busque el parche puede encontrarlo. Como
722a0454bb5SCarlos Bilbaoen la ``frase de resumen``, es importante ser tanto sucinto como
723a0454bb5SCarlos Bilbaodescriptivo.
724a0454bb5SCarlos Bilbao
725a0454bb5SCarlos BilbaoLa línea marcadora ``---`` cumple el propósito esencial de marcar para
726a0454bb5SCarlos Bilbaoherramientas de manejo de parches donde termina el mensaje de registro de
727a0454bb5SCarlos Bilbaocambios.
728a0454bb5SCarlos Bilbao
729a0454bb5SCarlos BilbaoUn buen uso de los comentarios adicionales después del marcador ``---`` es
730a0454bb5SCarlos Bilbaopara ``diffstat``, para mostrar qué archivos han cambiado, y el número de
731a0454bb5SCarlos Bilbaolíneas insertadas y eliminadas por archivo. Un ``diffstat`` es
732a0454bb5SCarlos Bilbaoespecialmente útil en parches más grandes. Si va a incluir un ``diffstat``
733a0454bb5SCarlos Bilbaodespués del marcador ``---``, utilice las opciones ``diffstat``
734a0454bb5SCarlos Bilbao``-p 1 -w 70`` para que los nombres de archivo se enumeran desde la parte
735a0454bb5SCarlos Bilbaosuperior del árbol de fuentes del kernel y no use demasiado espacio
736a0454bb5SCarlos Bilbaohorizontal (que encaje fácilmente en 80 columnas, tal vez con alguna
737a0454bb5SCarlos Bilbaoindentación). (``git`` genera diffstats apropiados por defecto).
738a0454bb5SCarlos Bilbao
739a0454bb5SCarlos BilbaoOtros comentarios relevantes solo en el momento o para el maintainer, pero
740a0454bb5SCarlos Bilbaono adecuados para el registro de cambios permanente, también debe ir aquí.
741a0454bb5SCarlos BilbaoUn buen ejemplo de tales comentarios podría ser ``registros de cambios de
742a0454bb5SCarlos Bilbaoparches`` que describen qué ha cambiado entre la versión v1 y v2 del
743a0454bb5SCarlos Bilbaoparche.
744a0454bb5SCarlos Bilbao
745a0454bb5SCarlos BilbaoPor favor, ponga esta información **después** de la línea ``---`` que
746a0454bb5SCarlos Bilbaosepara el registro de cambios del resto del parche. La información de la
747a0454bb5SCarlos Bilbaoversión no forma parte del registro de cambios que se incluye con el árbol
748a0454bb5SCarlos Bilbaogit. Es información adicional para los revisores. Si se coloca encima de la
749a0454bb5SCarlos Bilbaoetiquetas de commit, necesita interacción manual para eliminarlo. Si esta
750a0454bb5SCarlos Bilbaodebajo de la línea de separación, se quita automáticamente al aplicar el
751a0454bb5SCarlos Bilbaoparche::
752a0454bb5SCarlos Bilbao
753a0454bb5SCarlos Bilbao  <mensaje de commit>
754a0454bb5SCarlos Bilbao  ...
755a0454bb5SCarlos Bilbao  Signed-off-by: Autor <autor@correo>
756a0454bb5SCarlos Bilbao  ---
757a0454bb5SCarlos Bilbao  V2 -> V3: función auxiliar redundante eliminada
758a0454bb5SCarlos Bilbao  V1 -> V2: estilo de código limpio y comentarios de revisión abordados
759a0454bb5SCarlos Bilbao
760a0454bb5SCarlos Bilbao  ruta/al/archivo | 5+++--
761a0454bb5SCarlos Bilbao  ...
762a0454bb5SCarlos Bilbao
763a0454bb5SCarlos BilbaoRevise más detalles sobre el formato de parche adecuado en las siguientes
764a0454bb5SCarlos Bilbaoreferencias
765a0454bb5SCarlos Bilbao
766a0454bb5SCarlos Bilbao.. _sp_backtraces:
767a0454bb5SCarlos Bilbao
768a0454bb5SCarlos BilbaoRetrocesos en mensajes de confirmación
769a0454bb5SCarlos Bilbao^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
770a0454bb5SCarlos Bilbao
771a0454bb5SCarlos BilbaoLos "backtraces" (deshacer el camino) ayuda a documentar la cadena de
772a0454bb5SCarlos Bilbaollamadas que conducen a un problema. Sin embargo, no todos los rastreos son
773a0454bb5SCarlos Bilbaoútiles. Por ejemplo, las tempranas cadenas de llamadas de inicio son únicas
774a0454bb5SCarlos Bilbaoy obvias. Sin embargo, al copiar la salida completa de dmesg textualmente,
775a0454bb5SCarlos Bilbaoincluye información que distrae, como marcas de tiempo, listas de módulos,
776a0454bb5SCarlos Bilbaoregistro y volcados de pila.
777a0454bb5SCarlos Bilbao
778a0454bb5SCarlos BilbaoPor lo tanto, los backtraces más útiles deben contener los datos
779a0454bb5SCarlos Bilbaorelevantes de la información vertida, lo que hace que sea más fácil
780a0454bb5SCarlos Bilbaocentrarse en el verdadero tema. Este es un ejemplo de un backtrace bien
781a0454bb5SCarlos Bilbaorecortado::
782a0454bb5SCarlos Bilbao
783a0454bb5SCarlos Bilbao  error de acceso de MSR no verificado: WRMSR a 0xd51 (intentó escribir 0x0000000000000064)
784a0454bb5SCarlos Bilbao  en rIP: 0xffffffffae059994 (native_write_msr+0x4/0x20)
785a0454bb5SCarlos Bilbao  Rastreo de llamadas:
786a0454bb5SCarlos Bilbao  mba_wrmsr
787a0454bb5SCarlos Bilbao  update_domains
788a0454bb5SCarlos Bilbao  rdtgroup_mkdir
789a0454bb5SCarlos Bilbao
790a0454bb5SCarlos Bilbao.. _sp_explicit_in_reply_to:
791a0454bb5SCarlos Bilbao
792a0454bb5SCarlos BilbaoIn-Reply-To explicitos en las cabeceras
793a0454bb5SCarlos Bilbao---------------------------------------
794a0454bb5SCarlos Bilbao
795a0454bb5SCarlos BilbaoPuede ser útil agregar manualmente encabezados In-Reply-To: a un parche
796a0454bb5SCarlos Bilbao(por ejemplo, al usar ``git send-email``) para asociar el parche con una
797a0454bb5SCarlos Bilbaodiscusión anterior relevante, por ejemplo para vincular una corrección de
798a0454bb5SCarlos Bilbaoerrores al correo electrónico con el informe de errores. Sin embargo, para
799a0454bb5SCarlos Bilbaouna serie de parches múltiples, generalmente es mejor evitar usar
800a0454bb5SCarlos BilbaoIn-Reply-To: para vincular a versiones anteriores de la serie. De esta
801a0454bb5SCarlos Bilbaoforma, varias versiones del parche no se convierten en un inmanejable
802a0454bb5SCarlos Bilbaobosque de referencias en clientes de correo electrónico. Si un enlace es
803a0454bb5SCarlos Bilbaoútil, puede usar el redirector https://lore.kernel.org/ (por ejemplo, en
804a0454bb5SCarlos Bilbaoel texto de la carta de introducción del correo electrónico) para vincular
805a0454bb5SCarlos Bilbaoa una versión anterior de la serie de parches.
806a0454bb5SCarlos Bilbao
807a0454bb5SCarlos Bilbao
808a0454bb5SCarlos BilbaoProporcionar información de árbol base
809a0454bb5SCarlos Bilbao--------------------------------------
810a0454bb5SCarlos Bilbao
811a0454bb5SCarlos BilbaoCuando otros desarrolladores reciben sus parches y comienzan el proceso de
812a0454bb5SCarlos Bilbaorevisión, a menudo es útil para ellos saber en qué parte del historial del
813a0454bb5SCarlos Bilbaoárbol deben colocar su trabajo. Esto es particularmente útil para CI
814a0454bb5SCarlos Bilbaoautomatizado de procesos que intentan ejecutar una serie de pruebas para
815a0454bb5SCarlos Bilbaoestablecer la calidad de su envío antes de que el maintainer comience la
816a0454bb5SCarlos Bilbaorevisión.
817a0454bb5SCarlos Bilbao
818a0454bb5SCarlos BilbaoSi está utilizando ``git format-patch`` para generar sus parches, puede
819a0454bb5SCarlos Bilbaoincluir automáticamente la información del árbol base en su envío usando el
820a0454bb5SCarlos Bilbaoparámetro ``--base``. La forma más fácil y conveniente de usar esta opción
821a0454bb5SCarlos Bilbaoes con "topical branches" (ramas de temas)::
822a0454bb5SCarlos Bilbao
823a0454bb5SCarlos Bilbao    $ git checkout -t -b my-topical-branch master
824a0454bb5SCarlos Bilbao    Branch 'my-topical-branch' set up to track local branch 'master'.
825a0454bb5SCarlos Bilbao    Switched to a new branch 'my-topical-branch'
826a0454bb5SCarlos Bilbao
827a0454bb5SCarlos Bilbao    [realice sus cambios y ediciones]
828a0454bb5SCarlos Bilbao
829a0454bb5SCarlos Bilbao    $ git format-patch --base=auto --cover-letter -o outgoing/ master
830a0454bb5SCarlos Bilbao    outgoing/0000-cover-letter.patch
831a0454bb5SCarlos Bilbao    outgoing/0001-First-Commit.patch
832a0454bb5SCarlos Bilbao    outgoing/...
833a0454bb5SCarlos Bilbao
834a0454bb5SCarlos BilbaoCuando abra ``outgoing/0000-cover-letter.patch`` para editar, tenga en
835a0454bb5SCarlos Bilbaocuenta que tendrá el tráiler ``base-commit:`` al final, que proporciona al
836a0454bb5SCarlos Bilbaorevisor y a las herramientas de CI suficiente información para realizar
837a0454bb5SCarlos Bilbaocorrectamente ``git am`` sin preocuparse por los conflictos::
838a0454bb5SCarlos Bilbao
839a0454bb5SCarlos Bilbao    $ git checkout -b patch-review [base-commit-id]
840a0454bb5SCarlos Bilbao    Switched to a new branch 'patch-review'
841a0454bb5SCarlos Bilbao    $ git am patches.mbox
842a0454bb5SCarlos Bilbao    Applying: First Commit
843a0454bb5SCarlos Bilbao    Applying: ...
844a0454bb5SCarlos Bilbao
845a0454bb5SCarlos BilbaoConsulte ``man git-format-patch`` para obtener más información al respecto
846a0454bb5SCarlos Bilbaode esta opción.
847a0454bb5SCarlos Bilbao
848a0454bb5SCarlos Bilbao.. Note::
849a0454bb5SCarlos Bilbao
850a0454bb5SCarlos Bilbao    La función ``--base`` se introdujo en la versión 2.9.0 de git.
851a0454bb5SCarlos Bilbao
852a0454bb5SCarlos BilbaoSi no está utilizando git para dar forma a sus parches, aún puede incluir
853a0454bb5SCarlos Bilbaoel mismo tráiler ``base-commit`` para indicar el hash de confirmación del
854a0454bb5SCarlos Bilbaoárbol en que se basa su trabajo. Debe agregarlo en la carta de presentación
855a0454bb5SCarlos Bilbaoo en el primer parche de la serie y debe colocarse ya sea bajo la línea
856a0454bb5SCarlos Bilbao``---`` o en la parte inferior de todos los demás contenido, justo antes de
857a0454bb5SCarlos Bilbaosu firma del correo electrónico.
858a0454bb5SCarlos Bilbao
859a0454bb5SCarlos Bilbao
860a0454bb5SCarlos BilbaoReferencias
861a0454bb5SCarlos Bilbao-----------
862a0454bb5SCarlos Bilbao
863a0454bb5SCarlos Bilbao"The perfect patch" (tpp) por Andrew Morton.
864a0454bb5SCarlos Bilbao  <https://www.ozlabs.org/~akpm/stuff/tpp.txt>
865a0454bb5SCarlos Bilbao
866a0454bb5SCarlos Bilbao"Linux kernel patch submission format" por Jeff Garzik.
867a0454bb5SCarlos Bilbao  <https://web.archive.org/web/20180829112450/http://linux.yyz.us/patch-format.html>
868a0454bb5SCarlos Bilbao
869a0454bb5SCarlos Bilbao"How to piss off a kernel subsystem maintainer" por Greg Kroah-Hartman.
870a0454bb5SCarlos Bilbao  <http://www.kroah.com/log/linux/maintainer.html>
871a0454bb5SCarlos Bilbao
872a0454bb5SCarlos Bilbao  <http://www.kroah.com/log/linux/maintainer-02.html>
873a0454bb5SCarlos Bilbao
874a0454bb5SCarlos Bilbao  <http://www.kroah.com/log/linux/maintainer-03.html>
875a0454bb5SCarlos Bilbao
876a0454bb5SCarlos Bilbao  <http://www.kroah.com/log/linux/maintainer-04.html>
877a0454bb5SCarlos Bilbao
878a0454bb5SCarlos Bilbao  <http://www.kroah.com/log/linux/maintainer-05.html>
879a0454bb5SCarlos Bilbao
880a0454bb5SCarlos Bilbao  <http://www.kroah.com/log/linux/maintainer-06.html>
881a0454bb5SCarlos Bilbao
882a0454bb5SCarlos BilbaoNO!!!! Gente, no mas bombas enormes de parches a linux-kernel@vger.kernel.org!
883a0454bb5SCarlos Bilbao  <https://lore.kernel.org/r/20050711.125305.08322243.davem@davemloft.net>
884a0454bb5SCarlos Bilbao
885a0454bb5SCarlos BilbaoKernel Documentation/process/coding-style.rst
886a0454bb5SCarlos Bilbao
887a0454bb5SCarlos BilbaoEmail de Linus Torvalds sobre la forma canónica de los parches:
888a0454bb5SCarlos Bilbao  <https://lore.kernel.org/r/Pine.LNX.4.58.0504071023190.28951@ppc970.osdl.org>
889a0454bb5SCarlos Bilbao
890a0454bb5SCarlos Bilbao"On submitting kernel patches" por Andi Kleen
891a0454bb5SCarlos Bilbao  Algunas estrategias para conseguir incluir cambios complicados o
892a0454bb5SCarlos Bilbao  controvertidos.
893a0454bb5SCarlos Bilbao
894a0454bb5SCarlos Bilbao  http://halobates.de/on-submitting-patches.pdf
895