€•Œsphinx.addnodes”Œdocument”“”)”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)”}”(hhh]”(hŒ pending_xref”“”)”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒEnglish”…””}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ/process/maintainer-kvm-x86”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)”}”(hhh]”hŒChinese (Simplified)”…””}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ./translations/zh_CN/process/maintainer-kvm-x86”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒChinese (Traditional)”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ./translations/zh_TW/process/maintainer-kvm-x86”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒItalian”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ./translations/it_IT/process/maintainer-kvm-x86”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ./translations/ja_JP/process/maintainer-kvm-x86”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ./translations/ko_KR/process/maintainer-kvm-x86”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒSpanish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒwarning”“”)”}”(hX?Si tiene alguna duda sobre la exactitud del contenido de esta traducción, la única referencia válida es la documentación oficial en inglés. Además, por defecto, los enlaces a documentos redirigen a la documentación en inglés, incluso si existe una versión traducida. Consulte el índice para más información.”h]”hŒ paragraph”“”)”}”(hX?Si tiene alguna duda sobre la exactitud del contenido de esta traducción, la única referencia válida es la documentación oficial en inglés. Además, por defecto, los enlaces a documentos redirigen a la documentación en inglés, incluso si existe una versión traducida. Consulte el índice para más información.”h]”hX?Si tiene alguna duda sobre la exactitud del contenido de esta traducción, la única referencia válida es la documentación oficial en inglés. Además, por defecto, los enlaces a documentos redirigen a la documentación en inglés, incluso si existe una versión traducida. Consulte el índice para más información.”…””}”(hh©hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸŒ2Documentation/translations/sp_SP/disclaimer-sp.rst”h Khh£ubah}”(h]”h ]”h"]”h$]”h&]”uh1h¡hhhžhhŸh·h NubhŒ field_list”“”)”}”(hhh]”(hŒfield”“”)”}”(hhh]”(hŒ field_name”“”)”}”(hŒOriginal”h]”hŒOriginal”…””}”(hhÊhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhhÅhŸŒ[/var/lib/git/docbuild/linux/Documentation/translations/sp_SP/process/maintainer-kvm-x86.rst”h KubhŒ field_body”“”)”}”(hŒ,Documentation/process/maintainer-kvm-x86.rst”h]”h¨)”}”(hhÝh]”hŒ,Documentation/process/maintainer-kvm-x86.rst”…””}”(hhßhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KhhÛubah}”(h]”h ]”h"]”h$]”h&]”uh1hÙhhÅubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÃhŸhØh KhhÀhžhubhÄ)”}”(hhh]”(hÉ)”}”(hŒ Translator”h]”hŒ Translator”…””}”(hhûhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhhøhŸhØh KubhÚ)”}”(hŒJuan Embid ”h]”h¨)”}”(hŒJuan Embid ”h]”(hŒ Juan Embid <”…””}”(hj hžhhŸNh NubhŒ reference”“”)”}”(hŒ jembid@ucm.es”h]”hŒ jembid@ucm.es”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œmailto:jembid@ucm.es”uh1jhj ubhŒ>”…””}”(hj hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh Khj ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÙhhøubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÃhŸhØh KhhÀhžhubeh}”(h]”h ]”h"]”h$]”h&]”uh1h¾hhhžhhŸhØh KubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒKVM x86”h]”hŒKVM x86”…””}”(hjJhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhjEhžhhŸhØh KubjD)”}”(hhh]”(jI)”}”(hŒPrólogo”h]”hŒPrólogo”…””}”(hj[hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhjXhžhhŸhØh K ubh¨)”}”(hXKVM se esfuerza por ser una comunidad acogedora; las contribuciones de los recién llegados son valoradas e incentivadas. Por favor, no se desanime ni se sienta intimidado por la extensión de este documento y las numerosas normas/directrices que contiene. Todos cometemos errores y todos hemos sido principiantes en algún momento. Mientras haga un esfuerzo honesto por seguir las directrices de KVM x86, sea receptivo a los comentarios, y aprenda de los errores que cometa, será recibido con los brazos abiertos, no con antorchas y horcas.”h]”hXKVM se esfuerza por ser una comunidad acogedora; las contribuciones de los recién llegados son valoradas e incentivadas. Por favor, no se desanime ni se sienta intimidado por la extensión de este documento y las numerosas normas/directrices que contiene. Todos cometemos errores y todos hemos sido principiantes en algún momento. Mientras haga un esfuerzo honesto por seguir las directrices de KVM x86, sea receptivo a los comentarios, y aprenda de los errores que cometa, será recibido con los brazos abiertos, no con antorchas y horcas.”…””}”(hjihžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh K hjXhžhubeh}”(h]”Œprologo”ah ]”h"]”Œprólogo”ah$]”h&]”uh1jChjEhžhhŸhØh K ubjD)”}”(hhh]”(jI)”}”(hŒTL;DR”h]”hŒTL;DR”…””}”(hj‚hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhjhžhhŸhØh Kubh¨)”}”(hŒTLas pruebas son obligatorias. Sea coherente con los estilos y patrones establecidos.”h]”hŒTLas pruebas son obligatorias. Sea coherente con los estilos y patrones establecidos.”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh Khjhžhubeh}”(h]”Œtl-dr”ah ]”h"]”Œtl;dr”ah$]”h&]”uh1jChjEhžhhŸhØh KubjD)”}”(hhh]”(jI)”}”(hŒÃrboles”h]”hŒÃrboles”…””}”(hj©hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhj¦hžhhŸhØh Kubh¨)”}”(hX>KVM x86 se encuentra actualmente en un período de transición de ser parte del árbol principal de KVM, a ser "sólo otra rama de KVM". Como tal, KVM x86 está dividido entre el árbol principal de KVM, ``git.kernel.org/pub/scm/virt/kvm/kvm.git``, y un árbol específico de KVM x86, ``github.com/kvm-x86/linux.git``.”h]”(hŒÐKVM x86 se encuentra actualmente en un período de transición de ser parte del árbol principal de KVM, a ser “sólo otra rama de KVMâ€. Como tal, KVM x86 está dividido entre el árbol principal de KVM, ”…””}”(hj·hžhhŸNh NubhŒliteral”“”)”}”(hŒ+``git.kernel.org/pub/scm/virt/kvm/kvm.git``”h]”hŒ'git.kernel.org/pub/scm/virt/kvm/kvm.git”…””}”(hjÁhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj·ubhŒ&, y un árbol específico de KVM x86, ”…””}”(hj·hžhhŸNh NubjÀ)”}”(hŒ ``github.com/kvm-x86/linux.git``”h]”hŒgithub.com/kvm-x86/linux.git”…””}”(hjÓhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj·ubhŒ.”…””}”(hj·hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh Khj¦hžhubh¨)”}”(hX‚Por lo general, las correcciones para el ciclo en curso se aplican directamente al árbol principal de KVM, mientras que todo el desarrollo para el siguiente ciclo se dirige a través del árbol de KVM x86. En el improbable caso de que una corrección para el ciclo actual se dirija a través del árbol KVM x86, se aplicará a la rama ``fixes`` antes de llegar al árbol KVM principal.”h]”(hXPPor lo general, las correcciones para el ciclo en curso se aplican directamente al árbol principal de KVM, mientras que todo el desarrollo para el siguiente ciclo se dirige a través del árbol de KVM x86. En el improbable caso de que una corrección para el ciclo actual se dirija a través del árbol KVM x86, se aplicará a la rama ”…””}”(hjëhžhhŸNh NubjÀ)”}”(hŒ ``fixes``”h]”hŒfixes”…””}”(hjóhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjëubhŒ) antes de llegar al árbol KVM principal.”…””}”(hjëhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh K!hj¦hžhubh¨)”}”(hŒTenga en cuenta que se espera que este periodo de transición dure bastante tiempo, es decir, que será el statu quo en un futuro previsible.”h]”hŒTenga en cuenta que se espera que este periodo de transición dure bastante tiempo, es decir, que será el statu quo en un futuro previsible.”…””}”(hj hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh K(hj¦hžhubjD)”}”(hhh]”(jI)”}”(hŒRamas”h]”hŒRamas”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhjhžhhŸhØh K,ubh¨)”}”(hXßEl árbol de KVM x86 está organizado en múltiples ramas por temas. El propósito de utilizar ramas temáticas más específicas es facilitar el control de un área de desarrollo, y para limitar los daños colaterales de errores humanos y/o commits con errores, por ejemplo, borrar el commit HEAD de una rama temática no tiene impacto en los hashes SHA1 de otros commit en en camino, y tener que rechazar una solicitud de pull debido a errores retrasa sólo esa rama temática.”h]”hXßEl árbol de KVM x86 está organizado en múltiples ramas por temas. El propósito de utilizar ramas temáticas más específicas es facilitar el control de un área de desarrollo, y para limitar los daños colaterales de errores humanos y/o commits con errores, por ejemplo, borrar el commit HEAD de una rama temática no tiene impacto en los hashes SHA1 de otros commit en en camino, y tener que rechazar una solicitud de pull debido a errores retrasa sólo esa rama temática.”…””}”(hj*hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh K-hjhžhubh¨)”}”(hŒúTodas las ramas temáticas, excepto ``next`` y ``fixes``, se agrupan en ``next`` a través de un Cthulhu merge en función de las necesidades, es decir, cuando se actualiza una rama temática. Como resultado, los push forzados a ``next`` son comunes.”h]”(hŒ$Todas las ramas temáticas, excepto ”…””}”(hj8hžhhŸNh NubjÀ)”}”(hŒ``next``”h]”hŒnext”…””}”(hj@hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj8ubhŒ y ”…””}”(hj8hžhhŸNh NubjÀ)”}”(hŒ ``fixes``”h]”hŒfixes”…””}”(hjRhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj8ubhŒ, se agrupan en ”…””}”(hj8hžhhŸNh NubjÀ)”}”(hŒ``next``”h]”hŒnext”…””}”(hjdhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj8ubhŒ• a través de un Cthulhu merge en función de las necesidades, es decir, cuando se actualiza una rama temática. Como resultado, los push forzados a ”…””}”(hj8hžhhŸNh NubjÀ)”}”(hŒ``next``”h]”hŒnext”…””}”(hjvhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj8ubhŒ son comunes.”…””}”(hj8hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh K5hjhžhubeh}”(h]”Œramas”ah ]”h"]”Œramas”ah$]”h&]”uh1jChj¦hžhhŸhØh K,ubjD)”}”(hhh]”(jI)”}”(hŒ Ciclo de Vida”h]”hŒ Ciclo de Vida”…””}”(hj™hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhj–hžhhŸhØh K;ubh¨)”}”(hŒ¸Las correcciones dirigidas a la versión actual, también conocida como mainline, suelen aplicarse directamente al árbol principal de KVM, es decir, no pasan por el árbol x86 de KVM.”h]”hŒ¸Las correcciones dirigidas a la versión actual, también conocida como mainline, suelen aplicarse directamente al árbol principal de KVM, es decir, no pasan por el árbol x86 de KVM.”…””}”(hj§hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh K:``, donde ```` es uno de los siguientes::”h]”(hŒ+El formato de prefijo más recomendable es ”…””}”(hjÛhžhhŸNh NubjÀ)”}”(hŒ``KVM: :``”h]”hŒ KVM: :”…””}”(hjãhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjÛubhŒ, donde ”…””}”(hjÛhžhhŸNh NubjÀ)”}”(hŒ ````”h]”hŒ”…””}”(hjõhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjÛubhŒ es uno de los siguientes:”…””}”(hjÛhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh K¸hjÊhžhubhŒ literal_block”“”)”}”(hŒR- x86 - x86/mmu - x86/pmu - x86/xen - autocomprobaciones - SVM - nSVM - VMX - nVMX”h]”hŒR- x86 - x86/mmu - x86/pmu - x86/xen - autocomprobaciones - SVM - nSVM - VMX - nVMX”…””}”hjsbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1j hŸhØh K»hjÊhžhubh¨)”}”(hŒÚ**¡NO use x86/kvm!** ``x86/kvm`` se usa exclusivamente para cambios de Linux virtualizado por KVM, es decir, para arch/x86/kernel/kvm.c. No use nombres de archivos o archivos completos como prefijo de asunto/shortlog.”h]”(hŒstrong”“”)”}”(hŒ**¡NO use x86/kvm!**”h]”hŒ¡NO use x86/kvm!”…””}”(hj%hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j#hjubhŒ ”…””}”(hjhžhhŸNh NubjÀ)”}”(hŒ ``x86/kvm``”h]”hŒx86/kvm”…””}”(hj7hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjubhŒ¹ se usa exclusivamente para cambios de Linux virtualizado por KVM, es decir, para arch/x86/kernel/kvm.c. No use nombres de archivos o archivos completos como prefijo de asunto/shortlog.”…””}”(hjhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KÅhjÊhžhubh¨)”}”(hŒ‹Tenga en cuenta que esto no coincide con las ramas temáticas (las ramas temáticas se preocupan mucho más por los conflictos de código).”h]”hŒ‹Tenga en cuenta que esto no coincide con las ramas temáticas (las ramas temáticas se preocupan mucho más por los conflictos de código).”…””}”(hjOhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KÉhjÊhžhubh¨)”}”(hŒpTodos los nombres distinguen entre mayúsculas y minúsculas. ``KVM: x86:`` es correcto, ``kvm: vmx:`` no lo es.”h]”(hŒ>Todos los nombres distinguen entre mayúsculas y minúsculas. ”…””}”(hj]hžhhŸNh NubjÀ)”}”(hŒ ``KVM: x86:``”h]”hŒ KVM: x86:”…””}”(hjehžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj]ubhŒ es correcto, ”…””}”(hj]hžhhŸNh NubjÀ)”}”(hŒ ``kvm: vmx:``”h]”hŒ kvm: vmx:”…””}”(hjwhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj]ubhŒ no lo es.”…””}”(hj]hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KÌhjÊhžhubh¨)”}”(hŒ‚Escriba en mayúsculas la primera palabra de la descripción condensada del parche, pero omita la puntuación final. Por ejemplo::”h]”hŒEscriba en mayúsculas la primera palabra de la descripción condensada del parche, pero omita la puntuación final. Por ejemplo:”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KÏhjÊhžhubj)”}”(hŒDKVM: x86: Corregir una desviación de puntero nulo en function_xyz()”h]”hŒDKVM: x86: Corregir una desviación de puntero nulo en function_xyz()”…””}”hjsbah}”(h]”h ]”h"]”h$]”h&]”jjuh1j hŸhØh KÒhjÊhžhubh¨)”}”(hŒno::”h]”hŒno:”…””}”(hj«hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KÔhjÊhžhubj)”}”(hŒCkvm: x86: corregir una desviación de puntero nulo en function_xyz.”h]”hŒCkvm: x86: corregir una desviación de puntero nulo en function_xyz.”…””}”hj¹sbah}”(h]”h ]”h"]”h$]”h&]”jjuh1j hŸhØh KÖhjÊhžhubh¨)”}”(hŒáSi un parche afecta a varios temas, recorra el árbol conceptual hasta encontrar el primer padre común (que suele ser simplemente ``x86``). En caso de duda, ``git log path/to/file`` debería proporcionar una pista razonable.”h]”(hŒƒSi un parche afecta a varios temas, recorra el árbol conceptual hasta encontrar el primer padre común (que suele ser simplemente ”…””}”(hjÇhžhhŸNh NubjÀ)”}”(hŒ``x86``”h]”hŒx86”…””}”(hjÏhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjÇubhŒ). En caso de duda, ”…””}”(hjÇhžhhŸNh NubjÀ)”}”(hŒ``git log path/to/file``”h]”hŒgit log path/to/file”…””}”(hjáhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjÇubhŒ+ debería proporcionar una pista razonable.”…””}”(hjÇhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KØhjÊhžhubh¨)”}”(hŒ¬De vez en cuando surgen nuevos temas, pero le rogamos que inicie un debate en la lista si desea proponer la introducción de un nuevo tema, es decir, no se ande con rodeos.”h]”hŒ¬De vez en cuando surgen nuevos temas, pero le rogamos que inicie un debate en la lista si desea proponer la introducción de un nuevo tema, es decir, no se ande con rodeos.”…””}”(hjùhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KÝhjÊhžhubh¨)”}”(hXConsulte :ref:`the_canonical_patch_format` para obtener más información, con una enmienda: no trate el límite de 70-75 caracteres como un límite absoluto y duro. En su lugar, utilice 75 caracteres como límite firme, pero no duro, y 80 caracteres como límite duro. Es decir, deje que el registro corto sobrepase en algunos caracteres el límite estándar si tiene una buena razón para hacerlo.”h]”(hŒ Consulte ”…””}”(hjhžhhŸNh Nubh)”}”(hŒ!:ref:`the_canonical_patch_format`”h]”jì)”}”(hjh]”hŒthe_canonical_patch_format”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”(j÷Œstd”Œstd-ref”eh"]”h$]”h&]”uh1jëhjubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jŒ refdomain”jŒreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆj Œthe_canonical_patch_format”uh1hhŸhØh KáhjubhXe para obtener más información, con una enmienda: no trate el límite de 70-75 caracteres como un límite absoluto y duro. En su lugar, utilice 75 caracteres como límite firme, pero no duro, y 80 caracteres como límite duro. Es decir, deje que el registro corto sobrepase en algunos caracteres el límite estándar si tiene una buena razón para hacerlo.”…””}”(hjhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KáhjÊhžhubeh}”(h]”Œshortlog”ah ]”h"]”Œshortlog”ah$]”h&]”uh1jChj$hžhhŸhØh K·ubjD)”}”(hhh]”(jI)”}”(hŒRegistro de cambios”h]”hŒRegistro de cambios”…””}”(hjDhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhjAhžhhŸhØh Kéubh¨)”}”(hŒhY lo que es más importante, escriba los registros de cambios en modo imperativo y evite los pronombres.”h]”hŒhY lo que es más importante, escriba los registros de cambios en modo imperativo y evite los pronombres.”…””}”(hjRhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KêhjAhžhubh¨)”}”(hX»Consulte :ref:`describe_changes` para obtener más información, con una recomendación: comience con un breve resumen de los cambios reales y continúe con el contexto y los antecedentes. Nota. Este orden entra en conflicto directo con el enfoque preferido del árbol de sugerencias. Por favor, siga el estilo preferido del árbol de sugerencias cuando envíe parches. que se dirigen principalmente a código arch/x86 que _NO_ es código KVM.”h]”(hŒ Consulte ”…””}”(hj`hžhhŸNh Nubh)”}”(hŒ:ref:`describe_changes`”h]”jì)”}”(hjjh]”hŒdescribe_changes”…””}”(hjlhžhhŸNh Nubah}”(h]”h ]”(j÷Œstd”Œstd-ref”eh"]”h$]”h&]”uh1jëhjhubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jŒ refdomain”jvŒreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆj Œdescribe_changes”uh1hhŸhØh Kíhj`ubhX› para obtener más información, con una recomendación: comience con un breve resumen de los cambios reales y continúe con el contexto y los antecedentes. Nota. Este orden entra en conflicto directo con el enfoque preferido del árbol de sugerencias. Por favor, siga el estilo preferido del árbol de sugerencias cuando envíe parches. que se dirigen principalmente a código arch/x86 que _NO_ es código KVM.”…””}”(hj`hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KíhjAhžhubh¨)”}”(hX§KVM x86 prefiere indicar lo que hace un parche antes de entrar en detalles por varias razones. En primer lugar, el código que realmente se está cambiando es posiblemente la información más importante, por lo que esa información debe ser fácil de encontrar. Changelogs que entierran el "qué está cambiando realmente" en una sola línea después de 3+ párrafos de fondo hacen muy difícil encontrar esa información.”h]”hX«KVM x86 prefiere indicar lo que hace un parche antes de entrar en detalles por varias razones. En primer lugar, el código que realmente se está cambiando es posiblemente la información más importante, por lo que esa información debe ser fácil de encontrar. Changelogs que entierran el “qué está cambiando realmente†en una sola línea después de 3+ párrafos de fondo hacen muy difícil encontrar esa información.”…””}”(hj’hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KõhjAhžhubh¨)”}”(hX×Para la revisión inicial, se podría argumentar que "lo que está roto" es más importante, pero para hojear los registros y la arqueología git, los detalles escabrosos importan cada vez menos. Por ejemplo, al hacer una serie de "git blame", los detalles de cada cambio a lo largo del camino son inútiles, los detalles sólo importan para el culpable. Proporcionar el "qué ha cambiado" facilita determinar rápidamente si una confirmación puede ser de interés o no.”h]”hXãPara la revisión inicial, se podría argumentar que “lo que está roto†es más importante, pero para hojear los registros y la arqueología git, los detalles escabrosos importan cada vez menos. Por ejemplo, al hacer una serie de “git blameâ€, los detalles de cada cambio a lo largo del camino son inútiles, los detalles sólo importan para el culpable. Proporcionar el “qué ha cambiado†facilita determinar rápidamente si una confirmación puede ser de interés o no.”…””}”(hj hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh KühjAhžhubh¨)”}”(hX¹Otra ventaja de decir primero "qué cambia" es que casi siempre es posible decir "qué cambia" en una sola frase. A la inversa, todo menos los errores más simples requieren varias frases o párrafos para describir el problema. Si tanto "qué está cambiando" como "cuál es el fallo" son muy breves, el orden no importa. Pero si uno es más corto (casi siempre el "qué está cambiando"), entonces cubrir el más corto primero es ventajoso porque es menos inconveniente para los lectores/revisores que tienen una preferencia estricta de orden. Por ejemplo, tener que saltarse una frase para llegar al contexto es menos doloroso que tener que saltarse tres párrafos para llegar a "lo que cambia".”h]”hXÑOtra ventaja de decir primero “qué cambia†es que casi siempre es posible decir “qué cambia†en una sola frase. A la inversa, todo menos los errores más simples requieren varias frases o párrafos para describir el problema. Si tanto “qué está cambiando†como “cuál es el fallo†son muy breves, el orden no importa. Pero si uno es más corto (casi siempre el “qué está cambiandoâ€), entonces cubrir el más corto primero es ventajoso porque es menos inconveniente para los lectores/revisores que tienen una preferencia estricta de orden. Por ejemplo, tener que saltarse una frase para llegar al contexto es menos doloroso que tener que saltarse tres párrafos para llegar a “lo que cambiaâ€.”…””}”(hj®hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh MhjAhžhubeh}”(h]”Œregistro-de-cambios”ah ]”h"]”Œregistro de cambios”ah$]”h&]”uh1jChj$hžhhŸhØh KéubjD)”}”(hhh]”(jI)”}”(hŒArreglos”h]”hŒArreglos”…””}”(hjÇhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhjÄhžhhŸhØh Mubh¨)”}”(hŒÏSi un cambio corrige un error de KVM/kernel, añada una etiqueta Fixes: incluso si el cambio no necesita ser retroportado a kernels estables, e incluso si el cambio corrige un error en una versión anterior.”h]”hŒÏSi un cambio corrige un error de KVM/kernel, añada una etiqueta Fixes: incluso si el cambio no necesita ser retroportado a kernels estables, e incluso si el cambio corrige un error en una versión anterior.”…””}”(hjÕhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh MhjÄhžhubh¨)”}”(hX–Por el contrario, si es necesario hacer una corrección, etiquete explícitamente el parche con "Cc: stable@vger.kernel" (aunque no es necesario que el correo electrónico incluya Cc: stable); KVM x86 opta por excluirse del backporting Correcciones: por defecto. Algunos parches seleccionados automáticamente se retroportan, pero requieren la aprobación explícita de los mantenedores (busque MANUALSEL).”h]”(hŒgPor el contrario, si es necesario hacer una corrección, etiquete explícitamente el parche con “Cc: ”…””}”(hjãhžhhŸNh Nubj)”}”(hŒstable@vger.kernel”h]”hŒstable@vger.kernel”…””}”(hjëhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œmailto:stable@vger.kernel”uh1jhjãubhX!†(aunque no es necesario que el correo electrónico incluya Cc: stable); KVM x86 opta por excluirse del backporting Correcciones: por defecto. Algunos parches seleccionados automáticamente se retroportan, pero requieren la aprobación explícita de los mantenedores (busque MANUALSEL).”…””}”(hjãhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh MhjÄhžhubeh}”(h]”Œarreglos”ah ]”h"]”Œarreglos”ah$]”h&]”uh1jChj$hžhhŸhØh MubjD)”}”(hhh]”(jI)”}”(hŒReferencias a Funciones”h]”hŒReferencias a Funciones”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhj hžhhŸhØh Mubh¨)”}”(hŒêCuando se mencione una función en un comentario, registro de cambios o registro abreviado (o en cualquier otro lugar), utilice el formato ``nombre_de_la_función()``. Los paréntesis proporcionan contexto y desambiguan la referencia.”h]”(hŒ‹Cuando se mencione una función en un comentario, registro de cambios o registro abreviado (o en cualquier otro lugar), utilice el formato ”…””}”(hjhžhhŸNh NubjÀ)”}”(hŒ``nombre_de_la_función()``”h]”hŒnombre_de_la_función()”…””}”(hj&hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjubhŒD. Los paréntesis proporcionan contexto y desambiguan la referencia.”…””}”(hjhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh Mhj hžhubeh}”(h]”Œreferencias-a-funciones”ah ]”h"]”Œreferencias a funciones”ah$]”h&]”uh1jChj$hžhhŸhØh MubjD)”}”(hhh]”(jI)”}”(hŒPruebas”h]”hŒPruebas”…””}”(hjIhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhjFhžhhŸhØh M$ubh¨)”}”(hX$Como mínimo, *todos* los parches de una serie deben construirse limpiamente para KVM_INTEL=m KVM_AMD=m, y KVM_WERROR=y. Construir todas las combinaciones posibles de Kconfigs no es factible, pero cuantas más mejor. KVM_SMM, KVM_XEN, PROVE_LOCKING, y X86_64 son particularmente interesantes.”h]”(hŒComo mínimo, ”…””}”(hjWhžhhŸNh Nubj)”}”(hŒ*todos*”h]”hŒtodos”…””}”(hj_hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjWubhX los parches de una serie deben construirse limpiamente para KVM_INTEL=m KVM_AMD=m, y KVM_WERROR=y. Construir todas las combinaciones posibles de Kconfigs no es factible, pero cuantas más mejor. KVM_SMM, KVM_XEN, PROVE_LOCKING, y X86_64 son particularmente interesantes.”…””}”(hjWhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M%hjFhžhubh¨)”}”(hXûTambién es obligatorio ejecutar las autopruebas y las pruebas unitarias de KVM (y, como es obvio, las pruebas deben pasar). La única excepción es para los cambios que tienen una probabilidad insignificante de afectar al comportamiento en tiempo de ejecución, por ejemplo, parches que sólo modificar los comentarios. Siempre que sea posible y pertinente, se recomienda encarecidamente realizar pruebas tanto en Intel como en AMD. Se recomienda arrancar una máquina virtual real, pero no es obligatorio.”h]”hXûTambién es obligatorio ejecutar las autopruebas y las pruebas unitarias de KVM (y, como es obvio, las pruebas deben pasar). La única excepción es para los cambios que tienen una probabilidad insignificante de afectar al comportamiento en tiempo de ejecución, por ejemplo, parches que sólo modificar los comentarios. Siempre que sea posible y pertinente, se recomienda encarecidamente realizar pruebas tanto en Intel como en AMD. Se recomienda arrancar una máquina virtual real, pero no es obligatorio.”…””}”(hjwhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M*hjFhžhubh¨)”}”(hX¼Para cambios que afecten al código de paginación en la sombra de KVM, es obligatorio ejecutar con TDP (EPT/NPT) deshabilitado. Para cambios que afecten al código MMU común de KVM, se recomienda encarecidamente ejecutar con TDP deshabilitado. Para todos los demás cambios, si el código que se está modificando depende de y/o interactúa con un parámetro del módulo, es obligatorio realizar pruebas con la configuración correspondiente.”h]”hX¼Para cambios que afecten al código de paginación en la sombra de KVM, es obligatorio ejecutar con TDP (EPT/NPT) deshabilitado. Para cambios que afecten al código MMU común de KVM, se recomienda encarecidamente ejecutar con TDP deshabilitado. Para todos los demás cambios, si el código que se está modificando depende de y/o interactúa con un parámetro del módulo, es obligatorio realizar pruebas con la configuración correspondiente.”…””}”(hj…hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M2hjFhžhubh¨)”}”(hŒåTenga en cuenta que las autopruebas de KVM y las pruebas de unidad de KVM tienen fallos conocidos. Si sospecha que un fallo no se debe a sus cambios, verifique que el *exactamente el mismo* fallo se produce con y sin sus cambios.”h]”(hŒ§Tenga en cuenta que las autopruebas de KVM y las pruebas de unidad de KVM tienen fallos conocidos. Si sospecha que un fallo no se debe a sus cambios, verifique que el ”…””}”(hj“hžhhŸNh Nubj)”}”(hŒ*exactamente el mismo*”h]”hŒexactamente el mismo”…””}”(hj›hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj“ubhŒ( fallo se produce con y sin sus cambios.”…””}”(hj“hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M9hjFhžhubh¨)”}”(hŒ²Los cambios que afecten a la documentación de texto reestructurado, es decir, a los archivos .rst, deben generar htmldocs de forma limpia, es decir, sin advertencias ni errores.”h]”hŒ²Los cambios que afecten a la documentación de texto reestructurado, es decir, a los archivos .rst, deben generar htmldocs de forma limpia, es decir, sin advertencias ni errores.”…””}”(hj³hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M>hjFhžhubh¨)”}”(hŒ·Si no puede probar completamente un cambio, por ejemplo, por falta de hardware, indique claramente qué nivel de pruebas ha podido realizar, por ejemplo, en la carta de presentación.”h]”hŒ·Si no puede probar completamente un cambio, por ejemplo, por falta de hardware, indique claramente qué nivel de pruebas ha podido realizar, por ejemplo, en la carta de presentación.”…””}”(hjÁhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh MBhjFhžhubeh}”(h]”Œpruebas”ah ]”h"]”Œpruebas”ah$]”h&]”uh1jChj$hžhhŸhØh M$ubjD)”}”(hhh]”(jI)”}”(hŒ Novedades”h]”hŒ Novedades”…””}”(hjÚhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhj×hžhhŸhØh MGubh¨)”}”(hXlCon una excepción, las nuevas características *deben* venir con cobertura de pruebas. Las pruebas específicas de KVM no son estrictamente necesarias, por ejemplo, si la cobertura se proporciona mediante la ejecución de una prueba de VM huésped suficientemente habilitada, o ejecutando una autoprueba de kernel relacionada en una VM, pero en todos los casos se prefieren las pruebas KVM dedicadas. Los casos de prueba negativos en particular son obligatorios para la habilitación de nuevas características de hardware, ya que los flujos de errores y excepciones rara vez se ejercitan simplemente ejecutando una VM.”h]”(hŒ0Con una excepción, las nuevas características ”…””}”(hjèhžhhŸNh Nubj)”}”(hŒ*deben*”h]”hŒdeben”…””}”(hjðhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjèubhX5 venir con cobertura de pruebas. Las pruebas específicas de KVM no son estrictamente necesarias, por ejemplo, si la cobertura se proporciona mediante la ejecución de una prueba de VM huésped suficientemente habilitada, o ejecutando una autoprueba de kernel relacionada en una VM, pero en todos los casos se prefieren las pruebas KVM dedicadas. Los casos de prueba negativos en particular son obligatorios para la habilitación de nuevas características de hardware, ya que los flujos de errores y excepciones rara vez se ejercitan simplemente ejecutando una VM.”…””}”(hjèhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh MHhj×hžhubh¨)”}”(hXLa única excepción a esta regla es si KVM está simplemente anunciando soporte para un a través de KVM_GET_SUPPORTED_CPUID, es decir, para instrucciones/funciones que KVM no puede impedir que utilice una VM y para las que no existe una verdadera habilitación.”h]”hXLa única excepción a esta regla es si KVM está simplemente anunciando soporte para un a través de KVM_GET_SUPPORTED_CPUID, es decir, para instrucciones/funciones que KVM no puede impedir que utilice una VM y para las que no existe una verdadera habilitación.”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh MRhj×hžhubh¨)”}”(hŒýTenga en cuenta que "nuevas características" no significa sólo "nuevas características de hardware". Las nuevas funcionalidades que no puedan ser validadas usando las pruebas existentes de KVM y/o las pruebas unitarias de KVM deben venir con pruebas.”h]”hXTenga en cuenta que “nuevas características†no significa sólo “nuevas características de hardwareâ€. Las nuevas funcionalidades que no puedan ser validadas usando las pruebas existentes de KVM y/o las pruebas unitarias de KVM deben venir con pruebas.”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh MWhj×hžhubh¨)”}”(hX_Es más que bienvenido el envío de nuevos desarrollos de características sin pruebas para obtener un feedback temprano, pero tales envíos deben ser etiquetados como RFC, y la carta de presentación debe indicar claramente qué tipo de feedback se solicita/espera. No abuse del proceso de RFC; las RFC no suelen recibir una revisión en profundidad.”h]”hX_Es más que bienvenido el envío de nuevos desarrollos de características sin pruebas para obtener un feedback temprano, pero tales envíos deben ser etiquetados como RFC, y la carta de presentación debe indicar claramente qué tipo de feedback se solicita/espera. No abuse del proceso de RFC; las RFC no suelen recibir una revisión en profundidad.”…””}”(hj$hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M\hj×hžhubeh}”(h]”Œ novedades”ah ]”h"]”Œ novedades”ah$]”h&]”uh1jChj$hžhhŸhØh MGubjD)”}”(hhh]”(jI)”}”(hŒCorrección de Errores”h]”hŒCorrección de Errores”…””}”(hj=hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhj:hžhhŸhØh Mcubh¨)”}”(hXSalvo en el caso de fallos "obvios" detectados por inspección, las correcciones deben ir acompañadas de un reproductor del fallo corregido. En muchos casos, el reproductor está implícito, por ejemplo, para errores de compilación y fallos de prueba, pero debe quedar claro para lectores qué es lo que no funciona y cómo verificar la solución. Se concede cierto margen a los errores detectados mediante cargas de trabajo/pruebas no públicas, pero se recomienda encarecidamente que se faciliten pruebas de regresión para dichos errores.”h]”hX#Salvo en el caso de fallos “obvios†detectados por inspección, las correcciones deben ir acompañadas de un reproductor del fallo corregido. En muchos casos, el reproductor está implícito, por ejemplo, para errores de compilación y fallos de prueba, pero debe quedar claro para lectores qué es lo que no funciona y cómo verificar la solución. Se concede cierto margen a los errores detectados mediante cargas de trabajo/pruebas no públicas, pero se recomienda encarecidamente que se faciliten pruebas de regresión para dichos errores.”…””}”(hjKhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh Mdhj:hžhubh¨)”}”(hXSEn general, las pruebas de regresión son preferibles para cualquier fallo que no sea trivial de encontrar. Por ejemplo, incluso si el error fue encontrado originalmente por un fuzzer como syzkaller, una prueba de regresión dirigida puede estar justificada si el error requiere golpear una condición de carrera de tipo uno en un millón.”h]”hXSEn general, las pruebas de regresión son preferibles para cualquier fallo que no sea trivial de encontrar. Por ejemplo, incluso si el error fue encontrado originalmente por un fuzzer como syzkaller, una prueba de regresión dirigida puede estar justificada si el error requiere golpear una condición de carrera de tipo uno en un millón.”…””}”(hjYhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh Mmhj:hžhubh¨)”}”(hŒÀRecuerde que los fallos de KVM rara vez son urgentes *y* no triviales de reproducir. Pregúntate si un fallo es realmente el fin del mundo antes de publicar una corrección sin un reproductor.”h]”(hŒ5Recuerde que los fallos de KVM rara vez son urgentes ”…””}”(hjghžhhŸNh Nubj)”}”(hŒ*y*”h]”hŒy”…””}”(hjohžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjgubhŒˆ no triviales de reproducir. Pregúntate si un fallo es realmente el fin del mundo antes de publicar una corrección sin un reproductor.”…””}”(hjghžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh Mshj:hžhubeh}”(h]”Œcorreccion-de-errores”ah ]”h"]”Œcorrección de errores”ah$]”h&]”uh1jChj$hžhhŸhØh Mcubeh}”(h]”Œ desarrollo”ah ]”h"]”Œ desarrollo”ah$]”h&]”uh1jChjEhžhhŸhØh KfubjD)”}”(hhh]”(jI)”}”(hŒ Publicación”h]”hŒ Publicación”…””}”(hjšhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhj—hžhhŸhØh MxubjD)”}”(hhh]”(jI)”}”(hŒEnlaces”h]”hŒEnlaces”…””}”(hj«hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhj¨hžhhŸhØh M{ubh¨)”}”(hX½No haga referencia explícita a informes de errores, versiones anteriores de un parche/serie, etc. mediante cabeceras ``In-Reply-To:``. Usar ``In-Reply-To:`` se convierte en un lío para grandes series y/o cuando el número de versiones es alto, y ``In-Reply-To:`` es inútil para cualquiera que no tenga el mensaje original, por ejemplo, si alguien no recibió un Cc en el informe de error o si la lista de destinatarios cambia entre versiones.”h]”(hŒvNo haga referencia explícita a informes de errores, versiones anteriores de un parche/serie, etc. mediante cabeceras ”…””}”(hj¹hžhhŸNh NubjÀ)”}”(hŒ``In-Reply-To:``”h]”hŒ In-Reply-To:”…””}”(hjÁhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj¹ubhŒ. Usar ”…””}”(hj¹hžhhŸNh NubjÀ)”}”(hŒ``In-Reply-To:``”h]”hŒ In-Reply-To:”…””}”(hjÓhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj¹ubhŒ[ se convierte en un lío para grandes series y/o cuando el número de versiones es alto, y ”…””}”(hj¹hžhhŸNh NubjÀ)”}”(hŒ``In-Reply-To:``”h]”hŒ In-Reply-To:”…””}”(hjåhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj¹ubhŒµ es inútil para cualquiera que no tenga el mensaje original, por ejemplo, si alguien no recibió un Cc en el informe de error o si la lista de destinatarios cambia entre versiones.”…””}”(hj¹hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M|hj¨hžhubh¨)”}”(hXPara enlazar con un informe de error, una versión anterior o cualquier cosa de interés, utiliza enlaces lore. Para hacer referencia a versiones anteriores, en general no incluya un Enlace: en el registro de cambios, ya que no hay necesidad de registrar la historia en git, es decir, ponga el enlace en la carta de presentación o en la sección que git ignora. Proporcione un Enlace: formal para los informes de errores y/o discusiones que condujeron al parche. El contexto de por qué se hizo un cambio es muy valioso para futuros lectores.”h]”hXPara enlazar con un informe de error, una versión anterior o cualquier cosa de interés, utiliza enlaces lore. Para hacer referencia a versiones anteriores, en general no incluya un Enlace: en el registro de cambios, ya que no hay necesidad de registrar la historia en git, es decir, ponga el enlace en la carta de presentación o en la sección que git ignora. Proporcione un Enlace: formal para los informes de errores y/o discusiones que condujeron al parche. El contexto de por qué se hizo un cambio es muy valioso para futuros lectores.”…””}”(hjýhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M„hj¨hžhubeh}”(h]”Œenlaces”ah ]”h"]”Œenlaces”ah$]”h&]”uh1jChj—hžhhŸhØh M{ubjD)”}”(hhh]”(jI)”}”(hŒ Basado en Git”h]”hŒ Basado en Git”…””}”(hj hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhj hžhhŸhØh MŽubh¨)”}”(hŒæSi utilizas la versión 2.9.0 o posterior de git (Googlers, ¡os incluimos a todos!), utilice ``git format-patch`` con el indicador ``--base`` para incluir automáticamente la información del árbol base en los parches generados.”h]”(hŒ^Si utilizas la versión 2.9.0 o posterior de git (Googlers, ¡os incluimos a todos!), utilice ”…””}”(hj$ hžhhŸNh NubjÀ)”}”(hŒ``git format-patch``”h]”hŒgit format-patch”…””}”(hj, hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj$ ubhŒ con el indicador ”…””}”(hj$ hžhhŸNh NubjÀ)”}”(hŒ ``--base``”h]”hŒ--base”…””}”(hj> hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hj$ ubhŒX para incluir automáticamente la información del árbol base en los parches generados.”…””}”(hj$ hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh Mhj hžhubh¨)”}”(hXŒTenga en cuenta que ``--base=auto`` funciona como se espera si y sólo si el upstream de una rama se establece en la rama temática base, por ejemplo, hará lo incorrecto si su upstream se establece en su repositorio personal con fines de copia de seguridad. Una solución "automática" alternativa es derivar los nombres de tus ramas de desarrollo basándose en su KVM x86, e introdúzcalo en ``--base``. Por ejemplo, ``x86/pmu/mi_nombre_de_rama``, y luego escribir un pequeño wrapper para extraer ``pmu`` del nombre de la rama actual para obtener ``--base=x/pmu``, donde ``x`` es el nombre que su repositorio utiliza para rastrear el remoto KVM x86.”h]”(hŒTenga en cuenta que ”…””}”(hjV hžhhŸNh NubjÀ)”}”(hŒ``--base=auto``”h]”hŒ --base=auto”…””}”(hj^ hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjV ubhXk funciona como se espera si y sólo si el upstream de una rama se establece en la rama temática base, por ejemplo, hará lo incorrecto si su upstream se establece en su repositorio personal con fines de copia de seguridad. Una solución “automática†alternativa es derivar los nombres de tus ramas de desarrollo basándose en su KVM x86, e introdúzcalo en ”…””}”(hjV hžhhŸNh NubjÀ)”}”(hŒ ``--base``”h]”hŒ--base”…””}”(hjp hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjV ubhŒ. Por ejemplo, ”…””}”(hjV hžhhŸNh NubjÀ)”}”(hŒ``x86/pmu/mi_nombre_de_rama``”h]”hŒx86/pmu/mi_nombre_de_rama”…””}”(hj‚ hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjV ubhŒ4, y luego escribir un pequeño wrapper para extraer ”…””}”(hjV hžhhŸNh NubjÀ)”}”(hŒ``pmu``”h]”hŒpmu”…””}”(hj” hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjV ubhŒ+ del nombre de la rama actual para obtener ”…””}”(hjV hžhhŸNh NubjÀ)”}”(hŒ``--base=x/pmu``”h]”hŒ --base=x/pmu”…””}”(hj¦ hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjV ubhŒ, donde ”…””}”(hjV hžhhŸNh NubjÀ)”}”(hŒ``x``”h]”hŒx”…””}”(hj¸ hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¿hjV ubhŒI es el nombre que su repositorio utiliza para rastrear el remoto KVM x86.”…””}”(hjV hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M”hj hžhubeh}”(h]”Œ basado-en-git”ah ]”h"]”Œ basado en git”ah$]”h&]”uh1jChj—hžhhŸhØh MŽubjD)”}”(hhh]”(jI)”}”(hŒTests de Co-Publicación”h]”hŒTests de Co-Publicación”…””}”(hjÛ hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhjØ hžhhŸhØh MŸubh¨)”}”(hXïLas autopruebas de KVM asociadas a cambios de KVM, por ejemplo, pruebas de regresión para correcciones de errores, deben publicarse junto con los cambios de KVM como una única serie. Se aplicarán las reglas estándar del núcleo para la bisección, es decir, los cambios de KVM que provoquen fallos en las pruebas se ordenarán después de las actualizaciones de las autopruebas, y viceversa. Las pruebas que fallan debido a errores de KVM deben ordenarse después de las correcciones de KVM.”h]”hXïLas autopruebas de KVM asociadas a cambios de KVM, por ejemplo, pruebas de regresión para correcciones de errores, deben publicarse junto con los cambios de KVM como una única serie. Se aplicarán las reglas estándar del núcleo para la bisección, es decir, los cambios de KVM que provoquen fallos en las pruebas se ordenarán después de las actualizaciones de las autopruebas, y viceversa. Las pruebas que fallan debido a errores de KVM deben ordenarse después de las correcciones de KVM.”…””}”(hjé hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M hjØ hžhubh¨)”}”(hX¡KVM-unit-tests debería *siempre* publicarse por separado. Las herramientas, por ejemplo b4 am, no saben que KVM-unit-tests es un repositorio separado y se confunden cuando los parches de una serie se aplican en diferentes árboles. Para vincular los parches de KVM-unit-tests a Parches KVM, primero publique los cambios KVM y luego proporcione un enlace lore Link: al parche/serie KVM en el parche(s) KVM-unit-tests.”h]”(hŒKVM-unit-tests debería ”…””}”(hj÷ hžhhŸNh Nubj)”}”(hŒ *siempre*”h]”hŒsiempre”…””}”(hjÿ hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj÷ ubhX€ publicarse por separado. Las herramientas, por ejemplo b4 am, no saben que KVM-unit-tests es un repositorio separado y se confunden cuando los parches de una serie se aplican en diferentes árboles. Para vincular los parches de KVM-unit-tests a Parches KVM, primero publique los cambios KVM y luego proporcione un enlace lore Link: al parche/serie KVM en el parche(s) KVM-unit-tests.”…””}”(hj÷ hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M¨hjØ hžhubeh}”(h]”Œtests-de-co-publicacion”ah ]”h"]”Œtests de co-publicación”ah$]”h&]”uh1jChj—hžhhŸhØh MŸubjD)”}”(hhh]”(jI)”}”(hŒNotificaciones”h]”hŒNotificaciones”…””}”(hj" hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhj hžhhŸhØh M°ubh¨)”}”(hX8Cuando se acepte oficialmente un parche/serie, se enviará un correo electrónico de notificación en respuesta a la publicación original (carta de presentación para series de varios parches). La notificación incluirá el árbol y la rama temática, junto con los SHA1 de los commits de los parches aplicados.”h]”hX8Cuando se acepte oficialmente un parche/serie, se enviará un correo electrónico de notificación en respuesta a la publicación original (carta de presentación para series de varios parches). La notificación incluirá el árbol y la rama temática, junto con los SHA1 de los commits de los parches aplicados.”…””}”(hj0 hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M±hj hžhubh¨)”}”(hX Si se aplica un subconjunto de parches, se indicará claramente en la notificación. A menos que se indique lo contrario, se sobreentiende que todos los parches del Las series que no han sido aceptadas necesitan más trabajo y deben presentarse en una nueva versión.”h]”hX Si se aplica un subconjunto de parches, se indicará claramente en la notificación. A menos que se indique lo contrario, se sobreentiende que todos los parches del Las series que no han sido aceptadas necesitan más trabajo y deben presentarse en una nueva versión.”…””}”(hj> hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M·hj hžhubh¨)”}”(hŒæSi por alguna razón se retira un parche después de haber sido aceptado oficialmente, se enviará una respuesta al correo electrónico de notificación explicando por qué se ha retirado el parche, así como los pasos siguientes.”h]”hŒæSi por alguna razón se retira un parche después de haber sido aceptado oficialmente, se enviará una respuesta al correo electrónico de notificación explicando por qué se ha retirado el parche, así como los pasos siguientes.”…””}”(hjL hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh M¼hj hžhubeh}”(h]”Œnotificaciones”ah ]”h"]”Œnotificaciones”ah$]”h&]”uh1jChj—hžhhŸhØh M°ubjD)”}”(hhh]”(jI)”}”(hŒEstabilidad SHA1”h]”hŒEstabilidad SHA1”…””}”(hje hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhjb hžhhŸhØh MÂubh¨)”}”(hXÂLos SHA1 no son 100% estables hasta que llegan al árbol de Linus. Un SHA1 es *normalmente* estable una vez que se ha enviado una notificación, pero ocurren cosas. En la mayoría de los casos, se proporcionará una actualización del correo electrónico de notificación si se aplica un SHA1 del parche. Sin embargo, en algunos escenarios, por ejemplo, si todas las ramas de KVM x86 necesitan ser rebasadas, no se darán notificaciones individuales.”h]”(hŒNLos SHA1 no son 100% estables hasta que llegan al árbol de Linus. Un SHA1 es ”…””}”(hjs hžhhŸNh Nubj)”}”(hŒ *normalmente*”h]”hŒ normalmente”…””}”(hj{ hžhhŸ•lNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjs ubhXg estable una vez que se ha enviado una notificación, pero ocurren cosas. En la mayoría de los casos, se proporcionará una actualización del correo electrónico de notificación si se aplica un SHA1 del parche. Sin embargo, en algunos escenarios, por ejemplo, si todas las ramas de KVM x86 necesitan ser rebasadas, no se darán notificaciones individuales.”…””}”(hjs hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh MÃhjb hžhubeh}”(h]”Œestabilidad-sha1”ah ]”h"]”Œestabilidad sha1”ah$]”h&]”uh1jChj—hžhhŸhØh MÂubjD)”}”(hhh]”(jI)”}”(hŒVulnerabilidades”h]”hŒVulnerabilidades”…””}”(hjž hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jHhj› hžhhŸhØh MÌubh¨)”}”(hX_Los fallos que pueden ser explotados por la VM (el "guest") para atacar al host (kernel o espacio de usuario), o que pueden ser explotados por una VM anidada a *su* host (L2 atacando a L1), son de particular interés para KVM. Por favor, siga el protocolo para :ref:`securitybugs` si sospecha que un fallo puede provocar una filtración de datos, etc.”h]”(hŒ¤Los fallos que pueden ser explotados por la VM (el “guestâ€) para atacar al host (kernel o espacio de usuario), o que pueden ser explotados por una VM anidada a ”…””}”(hj¬ hžhhŸNh Nubj)”}”(hŒ*su*”h]”hŒsu”…””}”(hj´ hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¬ ubhŒa host (L2 atacando a L1), son de particular interés para KVM. Por favor, siga el protocolo para ”…””}”(hj¬ hžhhŸNh Nubh)”}”(hŒ:ref:`securitybugs`”h]”jì)”}”(hjÈ h]”hŒ securitybugs”…””}”(hjÊ hžhhŸNh Nubah}”(h]”h ]”(j÷Œstd”Œstd-ref”eh"]”h$]”h&]”uh1jëhjÆ ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jŒ refdomain”jÔ Œreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆj Œ securitybugs”uh1hhŸhØh MÍhj¬ ubhŒG si sospecha que un fallo puede provocar una filtración de datos, etc.”…””}”(hj¬ hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h§hŸhØh MÍhj› hžhubeh}”(h]”Œvulnerabilidades”ah ]”h"]”Œvulnerabilidades”ah$]”h&]”uh1jChj—hžhhŸhØh MÌubeh}”(h]”Œ publicacion”ah ]”h"]”Œ publicación”ah$]”h&]”uh1jChjEhžhhŸhØh Mxubeh}”(h]”Œkvm-x86”ah ]”h"]”Œkvm x86”ah$]”h&]”uh1jChhhžhhŸhØh Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hØuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)”}”(jHNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”Œentry”Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”j+ Œerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hØŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”(j j j|jyj£j j!jj“jjÖjÓjjj”j‘j½jºjKjHjrjojÇjÄj>j;jÁj¾j jjCj@jÔjÑj7j4jŒj‰jý jú j j jÕ jÒ j j j_ j\ j˜ j• jõ jò uŒ nametypes”}”(j ‰j|‰j£‰j!‰j“‰jÖ‰j‰j”‰j½‰jK‰jr‰jljj>‰jÁ‰j ‰jC‰jÔ‰j7‰jŒ‰jý ‰j ‰jÕ ‰j ‰j_ ‰j˜ ‰jõ ‰uh}”(j jEjyjXj jjj¦jjjÓj–jjÙj‘j$jºj5jHjÀjojNjÄjuj;jÊj¾jAjjÄj@j jÑjFj4j×j‰j:jú j—j j¨jÒ j j jØ j\ j j• jb jò j› uŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ?Documentation/translations/sp_SP/process/maintainer-kvm-x86.rst”(NNNNt”†”aŒ decoration”Nhžhub.