249 lines · plain
1.. include:: ../disclaimer-ita.rst2 3:Original: :ref:`Documentation/process/stable-kernel-rules.rst <stable_kernel_rules>`4:Translator: Federico Vaga <federico.vaga@vaga.pv.it>5 6.. _it_stable_kernel_rules:7 8Tutto quello che volevate sapere sui rilasci -stable di Linux9==============================================================10 11Regole sul tipo di patch che vengono o non vengono accettate nei sorgenti12"-stable":13 14- Questa patch o una equivalente deve esistere già nei sorgenti principali di15 Linux (upstream)16- Ovviamente dev'essere corretta e verificata.17- Non dev'essere più grande di 100 righe, incluso il contesto.18- Deve rispettare le regole scritte in19 :ref:`Documentation/translations/it_IT/process/submitting-patches.rst <it_submittingpatches>`20- Deve correggere un vero baco che causi problemi agli utenti oppure aggiunge21 un nuovo identificatore di dispositivo. Maggiori dettagli per il primo caso:22 23 - Corregge un problema come un oops, un blocco, una corruzione di dati, un24 vero problema di sicurezza, una stranezza hardware, un problema di25 compilazione (ma non per cose già segnate con CONFIG_BROKEN), o problemi26 del tipo "oh, questo non va bene".27 - Problemi importanti riportati dagli utenti di una distribuzione potrebbero28 essere considerati se correggono importanti problemi di prestazioni o di29 interattività. Dato che questi problemi non sono così ovvi e la loro30 correzione ha un'alta probabilità d'introdurre una regressione,31 dovrebbero essere sottomessi solo dal manutentore della distribuzione32 includendo un link, se esiste, ad un rapporto su bugzilla, e informazioni33 aggiuntive sull'impatto che ha sugli utenti.34 - Non si accettano cose del tipo "Questo potrebbe essere un problema ..."35 come una teorica sezione critica, senza aver fornito anche una spiegazione36 su come il baco possa essere sfruttato.37 - Non deve includere alcuna correzione "banale" (correzioni grammaticali,38 pulizia dagli spazi bianchi, eccetera).39 40Procedura per sottomettere patch per i sorgenti -stable41-------------------------------------------------------42 43.. note::44 Una patch di sicurezza non dovrebbe essere gestita (solamente) dal processo45 di revisione -stable, ma dovrebbe seguire le procedure descritte in46 :ref:`Documentation/translations/it_IT/process/security-bugs.rst <it_securitybugs>`.47 48Ci sono tre opzioni per inviare una modifica per i sorgenti -stable:49 501. Aggiungi un'etichetta 'stable' alla descrizione della patch al momento della51 sottomissione per l'inclusione nei sorgenti principali.522. Chiedere alla squadra "stable" di prendere una patch già applicata sui53 sorgenti principali543. Sottomettere una patch alla squadra "stable" equivalente ad una modifica già55 fatta sui sorgenti principali.56 57Le seguenti sezioni descrivono con maggiori dettagli ognuna di queste opzioni58 59L':ref:`it_option_1` è **fortemente** raccomandata; è il modo più facile e60usato. L':ref:`it_option_2` si usa quando al momento della sottomissione non si61era pensato di riportare la modifica su versioni precedenti.62L':ref:`it_option_3` è un'alternativa ai due metodi precedenti quando la patch63nei sorgenti principali ha bisogno di aggiustamenti per essere applicata su64versioni precedenti (per esempio a causa di cambiamenti dell'API).65 66Quando si utilizza l'opzione 2 o 3 è possibile chiedere che la modifica sia67inclusa in specifiche versioni stabili. In tal caso, assicurarsi che la correzione68o una equivalente sia applicabile, o già presente in tutti i sorgenti69stabili più recenti ancora supportati. Questo ha lo scopo di prevenire70regressioni che gli utenti potrebbero incontrare in seguito durante71l'aggiornamento, se ad esempio una correzione per 5.19-rc1 venisse72riportata a 5.10.y, ma non a 5.15.y.73 74.. _it_option_1:75 76Opzione 177*********78 79Aggiungete la seguente etichetta nell'area delle firme per far sì che una patch80che state inviando per l'inclusione nei sorgenti principali venga presa81automaticamente anche per quelli stabili::82 83 Cc: stable@vger.kernel.org84 85Invece, usate ``Cc: stable@vger.kernel.org`` quando state inviando correzioni86per vulnerabilità non ancora di pubblico dominio: questo riduce il rischio di87esporre accidentalmente al pubblico la correzione quando si usa 'git88send-email', perché i messaggi inviati a quell'indirizzo non vengono inviati da89nessuna parte.90 91Una volta che la patch è stata inclusa, verrà applicata anche sui sorgenti92stabili senza che l'autore o il manutentore del sottosistema debba fare93qualcosa.94 95Per lasciare una nota per la squadra "stable", usate commenti in linea in stile96shell (leggere oltre per maggiori dettagli).97 98* Specificate i prerequisiti per le patch aggiuntive::99 100 Cc: <stable@vger.kernel.org> # 3.3.x: a1f84a3: sched: Check for idle101 Cc: <stable@vger.kernel.org> # 3.3.x: 1b9508f: sched: Rate-limit newidle102 Cc: <stable@vger.kernel.org> # 3.3.x: fd21073: sched: Fix affinity logic103 Cc: <stable@vger.kernel.org> # 3.3.x104 Signed-off-by: Ingo Molnar <mingo@elte.hu>105 106 La sequenza di etichette ha il seguente significato::107 108 git cherry-pick a1f84a3109 git cherry-pick 1b9508f110 git cherry-pick fd21073111 git cherry-pick <this commit>112 113 Notate che per una serie di patch non dovere elencare come necessarie tutte114 le patch della serie stessa. Per esempio se avete la seguente serie::115 116 patch1117 patch2118 119 dove patch2 dipende da patch1, non dovete elencare patch1 come requisito per120 patch2 se avete già menzionato patch1 per l'inclusione in "stable"121 122* Evidenziate le patch che hanno dei requisiti circa la versione del kernel::123 124 Cc: <stable@vger.kernel.org> # 3.3.x125 126 L'etichetta ha il seguente significato::127 128 git cherry-pick <this commit>129 130 per ogni sorgente "-stable" che inizia con la versione indicata.131 132 Notate che queste etichette non sono necessarie se la squadre "stable" può133 dedurre la versione dalle etichette Fixes:134 135* Ritardare l'inclusione di patch::136 Cc: <stable@vger.kernel.org> # after -rc3137 138* Evidenziare problemi noti::139 140 Cc: <stable@vger.kernel.org> # see patch description, needs adjustments for <= 6.3141 142Esiste un'ulteriore variante per l'etichetta "stable" che permette di comunicare143allo strumento di *backporting* di ignorare un cambiamento::144 145 Cc: <stable+noautosel@kernel.org> # reason goes here, and must be present146 147 148.. _it_option_2:149 150Opzione 2151*********152 153Se la patch è già stata inclusa nei sorgenti Linux, inviate una mail a154stable@vger.kernel.org includendo: il titolo della patch, l'identificativo155del commit, il perché pensate che debba essere applicata, e in quali versioni156del kernel la vorreste vedere.157 158.. _it_option_3:159 160Opzione 3161*********162 163Dopo aver verificato che rispetta le regole descritte in precedenza, inviata la164patch a stable@vger.kernel.org facendo anche menzione delle versioni nella quale165si vorrebbe applicarla. Nel farlo, dovete annotare nel changelog166l'identificativo del commit nei sorgenti principali, così come la versione del167kernel nel quale vorreste vedere la patch.::168 169 commit <sha1> upstream.170 171o in alternativa::172 173 [ Upstream commit <sha1> ]174 175Se la patch inviata devia rispetto all'originale presente nei sorgenti176principali (per esempio per adattarsi ad un cambiamento di API), allora questo177dev'essere giustificato e dettagliato in modo chiaro nella descrizione.178 179Dopo la sottomissione180---------------------181 182Il mittente riceverà un ACK quando la patch è stata accettata e messa in coda,183oppure un NAK se la patch è stata rigettata. La risposta potrebbe richiedere184alcuni giorni in funzione dei piani dei membri della squadra "stable",185 186Se accettata, la patch verrà aggiunta alla coda -stable per essere revisionata187dal altri sviluppatori e dal principale manutentore del sottosistema.188 189Ciclo di una revisione190----------------------191 192- Quando i manutentori -stable decidono di fare un ciclo di revisione, le193 patch vengono mandate al comitato per la revisione, ai manutentori soggetti194 alle modifiche delle patch (a meno che il mittente non sia anche il195 manutentore di quell'area del kernel) e in CC: alla lista di discussione196 linux-kernel.197- La commissione per la revisione ha 48 ore per dare il proprio ACK o NACK198 alle patch.199- Se una patch viene rigettata da un membro della commissione, o un membro200 della lista linux-kernel obietta la bontà della patch, sollevando problemi201 che i manutentori ed i membri non avevano compreso, allora la patch verrà202 rimossa dalla coda.203- Le patch che hanno ricevuto un ACK verranno inviate nuovamente come parte di204 un rilascio candidato (-rc) al fine di essere verificate dagli sviluppatori e205 dai testatori.206- Solitamente si pubblica solo una -rc, tuttavia se si riscontrano problemi207 importanti, alcune patch potrebbero essere modificate o essere scartate,208 oppure nuove patch potrebbero essere messe in coda. Dunque, verranno pubblicate209 nuove -rc e così via finché non si ritiene che non vi siano più problemi.210- Si può rispondere ad una -rc scrivendo sulla lista di discussione un'email211 con l'etichetta "Tested-by:". Questa etichetta verrà raccolta ed aggiunta al212 commit rilascio.213- Alla fine del ciclo di revisione il nuovo rilascio -stable conterrà tutte le214 patch che erano in coda e sono state verificate.215- Le patch di sicurezza verranno accettate nei sorgenti -stable direttamente216 dalla squadra per la sicurezza del kernel, e non passerà per il normale217 ciclo di revisione. Contattate la suddetta squadra per maggiori dettagli218 su questa procedura.219 220Sorgenti221--------222 223- La coda delle patch, sia quelle già applicate che in fase di revisione,224 possono essere trovate al seguente indirizzo:225 226 https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git227 228- Il rilascio definitivo, e marchiato, di tutti i kernel stabili può essere229 trovato in rami distinti per versione al seguente indirizzo:230 231 https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git232 233- I rilasci candidati di tutti i kernel stabili possono essere trovati al234 seguente indirizzo:235 236 https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/237 238 .. warning::239 I sorgenti -stable-rc sono un'istantanea dei sorgenti stable-queue e240 subirà frequenti modifiche, dunque verrà anche trapiantato spesso.241 Dovrebbe essere usato solo allo scopo di verifica (per esempio in un242 sistema di CI)243 244Comitato per la revisione245-------------------------246 247- Questo comitato è fatto di sviluppatori del kernel che si sono offerti248 volontari per questo lavoro, e pochi altri che non sono proprio volontari.249