요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
.. include:: ../../disclaimer-ita.rst
:Original: :doc:`../../../../arch/riscv/patch-acceptance`
:Translator: Federico Vaga <federico.vaga@vaga.pv.it>
arch/riscv linee guida alla manutenzione per gli sviluppatori
=============================================================
Introduzione
------------
L'insieme di istruzioni RISC-V sono sviluppate in modo aperto: le
bozze in fase di sviluppo sono disponibili a tutti per essere
revisionate e per essere sperimentare nelle implementazioni. Le bozze
dei nuovi moduli o estensioni possono cambiare in fase di sviluppo - a
volte in modo incompatibile rispetto a bozze precedenti. Questa
flessibilità può portare a dei problemi di manutenzioni per il
supporto RISC-V nel kernel Linux. I manutentori Linux non amano
l'abbandono del codice, e il processo di sviluppo del kernel
preferisce codice ben revisionato e testato rispetto a quello
sperimentale. Desideriamo estendere questi stessi principi al codice
relativo all'architettura RISC-V che verrà accettato per l'inclusione
nel kernel.
Patchwork
---------
RISC-V ha un'istanza di patchwork dov'è possibile controllare lo stato delle patch:
https://patchwork.kernel.org/project/linux-riscv/list/
Se la vostra patch non appare nella vista predefinita, i manutentori di RISC-V
hanno probabilmente richiesto delle modifiche o si aspettano che venga applicata
a un altro albero.
Il processo automatico viene eseguito su questa istanza di patchwork, costruendo
e collaudando le patch man mano che arrivano. Il processo applica le patch al
riferimento HEAD corrente dei rami `for-next` e `fixes` dei sorgenti RISC-V,
questo a seconda che la patch sia stata o meno individuata come correzione. In
caso contrario, utilizzerà il ramo `master` di RISC-V. L'esatto commit a cui è
stata applicata una serie di patch sarà annotato su patchwork. È improbabile che
vengano applicate Le patch che non passano i controlli, nella maggior parte dei
casi dovranno essere ripresentate.
In aggiunta alla lista delle verifiche da fare prima di inviare una patch
-------------------------------------------------------------------------
Accetteremo le patch per un nuovo modulo o estensione se la fondazione
RISC-V li classifica come "Frozen" o "Retified". (Ovviamente, gli
sviluppatori sono liberi di mantenere una copia del kernel Linux
contenente il codice per una bozza di estensione).
In aggiunta, la specifica RISC-V permette agli implementatori di
creare le proprie estensioni. Queste estensioni non passano
attraverso il processo di revisione della fondazione RISC-V. Per
questo motivo, al fine di evitare complicazioni o problemi di
prestazioni, accetteremo patch solo per quelle estensioni che sono
state ufficialmente accettate dalla fondazione RISC-V. (Ovviamente,
gli implementatori sono liberi di mantenere una copia del kernel Linux
contenente il codice per queste specifiche estensioni).
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
문서 출처와 패치 수용 원칙
1-24이 문서는 이탈리아어 공통 면책 고지 `../../disclaimer-ita.rst`를 포함하고, 공식 원문 `../../../../arch/riscv/patch-acceptance`를 참조합니다. 번역자는 Federico Vaga입니다.
RISC-V 명령 집합은 공개적으로 개발됩니다. 개발 중인 초안은 누구나 검토하고 구현에서 시험할 수 있지만, 새 모듈이나 확장 초안은 개발 과정에서 이전 초안과 호환되지 않는 방식으로 바뀔 수 있습니다.
이러한 유연성은 Linux 커널의 RISC-V 지원을 장기 유지하는 데 문제를 일으킬 수 있습니다. Linux 유지관리자는 버려지는 코드를 선호하지 않으며, 커널 개발 과정은 실험적 코드보다 충분히 검토되고 시험된 코드를 우선합니다.
따라서 커널에 포함할 RISC-V 아키텍처 코드에도 같은 원칙을 적용합니다. 공개 초안이라는 이유만으로 곧바로 병합하지 않고, 안정성과 검토 상태를 패치 수용 기준으로 삼습니다.
개방형 초안에서 장기 유지 가능한 커널 코드로 가는 판단 흐름입니다.
실험 가능성과 upstream 수용 가능성을 구분합니다.
.. include:: ../../disclaimer-ita.rst
:Original: :doc:`../../../../arch/riscv/patch-acceptance`
:Translator: Federico Vaga <federico.vaga@vaga.pv.it>
arch/riscv linee guida alla manutenzione per gli sviluppatori
=============================================================
Introduzione
------------
L'insieme di istruzioni RISC-V sono sviluppate in modo aperto: le
bozze in fase di sviluppo sono disponibili a tutti per essere
revisionate e per essere sperimentare nelle implementazioni. Le bozze
dei nuovi moduli o estensioni possono cambiare in fase di sviluppo - a
volte in modo incompatibile rispetto a bozze precedenti. Questa
flessibilità può portare a dei problemi di manutenzioni per il
supporto RISC-V nel kernel Linux. I manutentori Linux non amano
l'abbandono del codice, e il processo di sviluppo del kernel
preferisce codice ben revisionato e testato rispetto a quello
sperimentale. Desideriamo estendere questi stessi principi al codice
relativo all'architettura RISC-V che verrà accettato per l'inclusione
nel kernel.
Patchwork 상태와 자동 검증
25-44RISC-V 패치 상태는 `https://patchwork.kernel.org/project/linux-riscv/list/`의 Patchwork 인스턴스에서 확인할 수 있습니다.
패치가 기본 보기에 나타나지 않는다면 RISC-V 유지관리자가 변경을 요청했거나 다른 트리에 적용되기를 기대하는 경우일 가능성이 큽니다.
자동화가 이 Patchwork 인스턴스에서 새 패치를 빌드하고 시험합니다. 패치가 수정으로 식별되었는지에 따라 RISC-V 소스의 현재 `for-next` 또는 `fixes` 브랜치 HEAD에 적용합니다.
해당 조건이 아니면 RISC-V `master` 브랜치를 사용합니다. 패치 시리즈가 적용된 정확한 commit은 Patchwork에 기록됩니다.
검사를 통과하지 못한 패치는 적용될 가능성이 낮으며, 대부분 문제를 고쳐 다시 제출해야 합니다.
패치 분류에 따라 기준 브랜치를 선택하고 빌드·시험 결과를 기록합니다.
패치 성격에 따른 자동 검증 기준입니다.
Patchwork
---------
RISC-V ha un'istanza di patchwork dov'è possibile controllare lo stato delle patch:
https://patchwork.kernel.org/project/linux-riscv/list/
Se la vostra patch non appare nella vista predefinita, i manutentori di RISC-V
hanno probabilmente richiesto delle modifiche o si aspettano che venga applicata
a un altro albero.
Il processo automatico viene eseguito su questa istanza di patchwork, costruendo
e collaudando le patch man mano che arrivano. Il processo applica le patch al
riferimento HEAD corrente dei rami `for-next` e `fixes` dei sorgenti RISC-V,
questo a seconda che la patch sia stata o meno individuata come correzione. In
caso contrario, utilizzerà il ramo `master` di RISC-V. L'esatto commit a cui è
stata applicata una serie di patch sarà annotato su patchwork. È improbabile che
vengano applicate Le patch che non passano i controlli, nella maggior parte dei
casi dovranno essere ripresentate.
추가 패치 수용 기준
45-60일반적인 패치 제출 전 점검 목록에 더해, 새 RISC-V 모듈이나 확장은 RISC-V 재단이 `Frozen` 또는 원문 표기 `Retified` 상태로 분류한 경우에만 패치를 받습니다.
개발자는 초안 확장 코드를 포함한 Linux 커널 사본을 별도로 유지할 자유가 있습니다. 다만 그것이 upstream 커널 수용을 뜻하지는 않습니다.
RISC-V 규격은 구현자가 자체 확장을 만들 수 있게 하지만, 이런 확장은 RISC-V 재단의 검토 절차를 거치지 않습니다.
복잡성과 성능 문제를 피하기 위해 자체 확장 패치는 RISC-V 재단이 공식적으로 승인한 확장에 대해서만 수용합니다. 구현자는 승인 전에도 해당 코드를 담은 개인 커널 사본을 유지할 수 있습니다.
공식 규격 상태와 upstream 패치 수용 여부를 정리합니다.
규격 상태와 공식 승인 여부로 upstream 대상을 가릅니다.
In aggiunta alla lista delle verifiche da fare prima di inviare una patch
-------------------------------------------------------------------------
Accetteremo le patch per un nuovo modulo o estensione se la fondazione
RISC-V li classifica come "Frozen" o "Retified". (Ovviamente, gli
sviluppatori sono liberi di mantenere una copia del kernel Linux
contenente il codice per una bozza di estensione).
In aggiunta, la specifica RISC-V permette agli implementatori di
creare le proprie estensioni. Queste estensioni non passano
attraverso il processo di revisione della fondazione RISC-V. Per
questo motivo, al fine di evitare complicazioni o problemi di
prestazioni, accetteremo patch solo per quelle estensioni che sono
state ufficialmente accettate dalla fondazione RISC-V. (Ovviamente,
gli implementatori sono liberi di mantenere una copia del kernel Linux
contenente il codice per queste specifiche estensioni).
요약·해설
patch-acceptance.rst:1-60RISC-V upstream 코드는 공개 초안이라는 이유만으로 수용되지 않습니다. Patchwork 빌드·시험을 통과하고, 장기 유지가 가능한 규격 상태이거나 RISC-V 재단의 공식 승인을 받은 확장이어야 합니다.