1*4882a593Smuzhiyun.. include:: ../disclaimer-ita.rst 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun:Original: :ref:`Documentation/process/stable-kernel-rules.rst <stable_kernel_rules>` 4*4882a593Smuzhiyun:Translator: Federico Vaga <federico.vaga@vaga.pv.it> 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun.. _it_stable_kernel_rules: 7*4882a593Smuzhiyun 8*4882a593SmuzhiyunTutto quello che volevate sapere sui rilasci -stable di Linux 9*4882a593Smuzhiyun============================================================== 10*4882a593Smuzhiyun 11*4882a593SmuzhiyunRegole sul tipo di patch che vengono o non vengono accettate nei sorgenti 12*4882a593Smuzhiyun"-stable": 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun - Ovviamente dev'essere corretta e verificata. 15*4882a593Smuzhiyun - Non dev'essere più grande di 100 righe, incluso il contesto. 16*4882a593Smuzhiyun - Deve correggere una cosa sola. 17*4882a593Smuzhiyun - Deve correggere un baco vero che sta disturbando gli utenti (non cose del 18*4882a593Smuzhiyun tipo "Questo potrebbe essere un problema ..."). 19*4882a593Smuzhiyun - Deve correggere un problema di compilazione (ma non per cose già segnate 20*4882a593Smuzhiyun con CONFIG_BROKEN), un kernel oops, un blocco, una corruzione di dati, 21*4882a593Smuzhiyun un vero problema di sicurezza, o problemi del tipo "oh, questo non va bene". 22*4882a593Smuzhiyun In pratica, qualcosa di critico. 23*4882a593Smuzhiyun - Problemi importanti riportati dagli utenti di una distribuzione potrebbero 24*4882a593Smuzhiyun essere considerati se correggono importanti problemi di prestazioni o di 25*4882a593Smuzhiyun interattività. Dato che questi problemi non sono così ovvi e la loro 26*4882a593Smuzhiyun correzione ha un'alta probabilità d'introdurre una regressione, dovrebbero 27*4882a593Smuzhiyun essere sottomessi solo dal manutentore della distribuzione includendo un 28*4882a593Smuzhiyun link, se esiste, ad un rapporto su bugzilla, e informazioni aggiuntive 29*4882a593Smuzhiyun sull'impatto che ha sugli utenti. 30*4882a593Smuzhiyun - Non deve correggere problemi relativi a una "teorica sezione critica", 31*4882a593Smuzhiyun a meno che non venga fornita anche una spiegazione su come questa si 32*4882a593Smuzhiyun possa verificare. 33*4882a593Smuzhiyun - Non deve includere alcuna correzione "banale" (correzioni grammaticali, 34*4882a593Smuzhiyun pulizia dagli spazi bianchi, eccetera). 35*4882a593Smuzhiyun - Deve rispettare le regole scritte in 36*4882a593Smuzhiyun :ref:`Documentation/translations/it_IT/process/submitting-patches.rst <it_submittingpatches>` 37*4882a593Smuzhiyun - Questa patch o una equivalente deve esistere già nei sorgenti principali di 38*4882a593Smuzhiyun Linux 39*4882a593Smuzhiyun 40*4882a593Smuzhiyun 41*4882a593SmuzhiyunProcedura per sottomettere patch per i sorgenti -stable 42*4882a593Smuzhiyun------------------------------------------------------- 43*4882a593Smuzhiyun 44*4882a593Smuzhiyun - Se la patch contiene modifiche a dei file nelle cartelle net/ o drivers/net, 45*4882a593Smuzhiyun allora seguite le linee guida descritte in 46*4882a593Smuzhiyun :ref:`Documentation/translations/it_IT/networking/netdev-FAQ.rst <it_netdev-FAQ>`; 47*4882a593Smuzhiyun ma solo dopo aver verificato al seguente indirizzo che la patch non sia 48*4882a593Smuzhiyun già in coda: 49*4882a593Smuzhiyun https://patchwork.kernel.org/bundle/netdev/stable/?state=* 50*4882a593Smuzhiyun - Una patch di sicurezza non dovrebbero essere gestite (solamente) dal processo 51*4882a593Smuzhiyun di revisione -stable, ma dovrebbe seguire le procedure descritte in 52*4882a593Smuzhiyun :ref:`Documentation/translations/it_IT/admin-guide/security-bugs.rst <it_securitybugs>`. 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun 55*4882a593SmuzhiyunPer tutte le altre sottomissioni, scegliere una delle seguenti procedure 56*4882a593Smuzhiyun------------------------------------------------------------------------ 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun.. _it_option_1: 59*4882a593Smuzhiyun 60*4882a593SmuzhiyunOpzione 1 61*4882a593Smuzhiyun********* 62*4882a593Smuzhiyun 63*4882a593SmuzhiyunPer far sì che una patch venga automaticamente inclusa nei sorgenti stabili, 64*4882a593Smuzhiyunaggiungete l'etichetta 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun.. code-block:: none 67*4882a593Smuzhiyun 68*4882a593Smuzhiyun Cc: stable@vger.kernel.org 69*4882a593Smuzhiyun 70*4882a593Smuzhiyunnell'area dedicata alla firme. Una volta che la patch è stata inclusa, verrà 71*4882a593Smuzhiyunapplicata anche sui sorgenti stabili senza che l'autore o il manutentore 72*4882a593Smuzhiyundel sottosistema debba fare qualcosa. 73*4882a593Smuzhiyun 74*4882a593Smuzhiyun.. _it_option_2: 75*4882a593Smuzhiyun 76*4882a593SmuzhiyunOpzione 2 77*4882a593Smuzhiyun********* 78*4882a593Smuzhiyun 79*4882a593SmuzhiyunDopo che la patch è stata inclusa nei sorgenti Linux, inviate una mail a 80*4882a593Smuzhiyunstable@vger.kernel.org includendo: il titolo della patch, l'identificativo 81*4882a593Smuzhiyundel commit, il perché pensate che debba essere applicata, e in quale versione 82*4882a593Smuzhiyundel kernel la vorreste vedere. 83*4882a593Smuzhiyun 84*4882a593Smuzhiyun.. _it_option_3: 85*4882a593Smuzhiyun 86*4882a593SmuzhiyunOpzione 3 87*4882a593Smuzhiyun********* 88*4882a593Smuzhiyun 89*4882a593SmuzhiyunInviata la patch, dopo aver verificato che rispetta le regole descritte in 90*4882a593Smuzhiyunprecedenza, a stable@vger.kernel.org. Dovete annotare nel changelog 91*4882a593Smuzhiyunl'identificativo del commit nei sorgenti principali, così come la versione 92*4882a593Smuzhiyundel kernel nel quale vorreste vedere la patch. 93*4882a593Smuzhiyun 94*4882a593SmuzhiyunL':ref:`it_option_1` è fortemente raccomandata; è il modo più facile e usato. 95*4882a593SmuzhiyunL':ref:`it_option_2` e l':ref:`it_option_3` sono più utili quando, al momento 96*4882a593Smuzhiyundell'inclusione dei sorgenti principali, si ritiene che non debbano essere 97*4882a593Smuzhiyunincluse anche in quelli stabili (per esempio, perché si crede che si dovrebbero 98*4882a593Smuzhiyunfare più verifiche per eventuali regressioni). L':ref:`it_option_3` è 99*4882a593Smuzhiyunparticolarmente utile se la patch ha bisogno di qualche modifica per essere 100*4882a593Smuzhiyunapplicata ad un kernel più vecchio (per esempio, perché nel frattempo l'API è 101*4882a593Smuzhiyuncambiata). 102*4882a593Smuzhiyun 103*4882a593SmuzhiyunNotate che per l':ref:`it_option_3`, se la patch è diversa da quella nei 104*4882a593Smuzhiyunsorgenti principali (per esempio perché è stato necessario un lavoro di 105*4882a593Smuzhiyunadattamento) allora dev'essere ben documentata e giustificata nella descrizione 106*4882a593Smuzhiyundella patch. 107*4882a593Smuzhiyun 108*4882a593SmuzhiyunL'identificativo del commit nei sorgenti principali dev'essere indicato sopra 109*4882a593Smuzhiyunal messaggio della patch, così: 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun.. code-block:: none 112*4882a593Smuzhiyun 113*4882a593Smuzhiyun commit <sha1> upstream. 114*4882a593Smuzhiyun 115*4882a593SmuzhiyunIn aggiunta, alcune patch inviate attraverso l':ref:`it_option_1` potrebbero 116*4882a593Smuzhiyundipendere da altre che devo essere incluse. Questa situazione può essere 117*4882a593Smuzhiyunindicata nel seguente modo nell'area dedicata alle firme: 118*4882a593Smuzhiyun 119*4882a593Smuzhiyun.. code-block:: none 120*4882a593Smuzhiyun 121*4882a593Smuzhiyun Cc: <stable@vger.kernel.org> # 3.3.x: a1f84a3: sched: Check for idle 122*4882a593Smuzhiyun Cc: <stable@vger.kernel.org> # 3.3.x: 1b9508f: sched: Rate-limit newidle 123*4882a593Smuzhiyun Cc: <stable@vger.kernel.org> # 3.3.x: fd21073: sched: Fix affinity logic 124*4882a593Smuzhiyun Cc: <stable@vger.kernel.org> # 3.3.x 125*4882a593Smuzhiyun Signed-off-by: Ingo Molnar <mingo@elte.hu> 126*4882a593Smuzhiyun 127*4882a593SmuzhiyunLa sequenza di etichette ha il seguente significato: 128*4882a593Smuzhiyun 129*4882a593Smuzhiyun.. code-block:: none 130*4882a593Smuzhiyun 131*4882a593Smuzhiyun git cherry-pick a1f84a3 132*4882a593Smuzhiyun git cherry-pick 1b9508f 133*4882a593Smuzhiyun git cherry-pick fd21073 134*4882a593Smuzhiyun git cherry-pick <this commit> 135*4882a593Smuzhiyun 136*4882a593SmuzhiyunInoltre, alcune patch potrebbero avere dei requisiti circa la versione del 137*4882a593Smuzhiyunkernel. Questo può essere indicato usando il seguente formato nell'area 138*4882a593Smuzhiyundedicata alle firme: 139*4882a593Smuzhiyun 140*4882a593Smuzhiyun.. code-block:: none 141*4882a593Smuzhiyun 142*4882a593Smuzhiyun Cc: <stable@vger.kernel.org> # 3.3.x 143*4882a593Smuzhiyun 144*4882a593SmuzhiyunL'etichetta ha il seguente significato: 145*4882a593Smuzhiyun 146*4882a593Smuzhiyun.. code-block:: none 147*4882a593Smuzhiyun 148*4882a593Smuzhiyun git cherry-pick <this commit> 149*4882a593Smuzhiyun 150*4882a593Smuzhiyunper ogni sorgente "-stable" che inizia con la versione indicata. 151*4882a593Smuzhiyun 152*4882a593SmuzhiyunDopo la sottomissione: 153*4882a593Smuzhiyun 154*4882a593Smuzhiyun - Il mittente riceverà un ACK quando la patch è stata accettata e messa in 155*4882a593Smuzhiyun coda, oppure un NAK se la patch è stata rigettata. A seconda degli impegni 156*4882a593Smuzhiyun degli sviluppatori, questa risposta potrebbe richiedere alcuni giorni. 157*4882a593Smuzhiyun - Se accettata, la patch verrà aggiunta alla coda -stable per essere 158*4882a593Smuzhiyun revisionata dal altri sviluppatori e dal principale manutentore del 159*4882a593Smuzhiyun sottosistema. 160*4882a593Smuzhiyun 161*4882a593Smuzhiyun 162*4882a593SmuzhiyunCiclo di una revisione 163*4882a593Smuzhiyun---------------------- 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun - Quando i manutentori -stable decidono di fare un ciclo di revisione, le 166*4882a593Smuzhiyun patch vengono mandate al comitato per la revisione, ai manutentori soggetti 167*4882a593Smuzhiyun alle modifiche delle patch (a meno che il mittente non sia anche il 168*4882a593Smuzhiyun manutentore di quell'area del kernel) e in CC: alla lista di discussione 169*4882a593Smuzhiyun linux-kernel. 170*4882a593Smuzhiyun - La commissione per la revisione ha 48 ore per dare il proprio ACK o NACK 171*4882a593Smuzhiyun alle patch. 172*4882a593Smuzhiyun - Se una patch viene rigettata da un membro della commissione, o un membro 173*4882a593Smuzhiyun della lista linux-kernel obietta la bontà della patch, sollevando problemi 174*4882a593Smuzhiyun che i manutentori ed i membri non avevano compreso, allora la patch verrà 175*4882a593Smuzhiyun rimossa dalla coda. 176*4882a593Smuzhiyun - Alla fine del ciclo di revisione tutte le patch che hanno ricevuto l'ACK 177*4882a593Smuzhiyun verranno aggiunte per il prossimo rilascio -stable, e successivamente 178*4882a593Smuzhiyun questo nuovo rilascio verrà fatto. 179*4882a593Smuzhiyun - Le patch di sicurezza verranno accettate nei sorgenti -stable direttamente 180*4882a593Smuzhiyun dalla squadra per la sicurezza del kernel, e non passerà per il normale 181*4882a593Smuzhiyun ciclo di revisione. Contattate la suddetta squadra per maggiori dettagli 182*4882a593Smuzhiyun su questa procedura. 183*4882a593Smuzhiyun 184*4882a593SmuzhiyunSorgenti 185*4882a593Smuzhiyun-------- 186*4882a593Smuzhiyun 187*4882a593Smuzhiyun - La coda delle patch, sia quelle già applicate che in fase di revisione, 188*4882a593Smuzhiyun possono essere trovate al seguente indirizzo: 189*4882a593Smuzhiyun 190*4882a593Smuzhiyun https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git 191*4882a593Smuzhiyun 192*4882a593Smuzhiyun - Il rilascio definitivo, e marchiato, di tutti i kernel stabili può essere 193*4882a593Smuzhiyun trovato in rami distinti per versione al seguente indirizzo: 194*4882a593Smuzhiyun 195*4882a593Smuzhiyun https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git 196*4882a593Smuzhiyun 197*4882a593Smuzhiyun 198*4882a593SmuzhiyunComitato per la revisione 199*4882a593Smuzhiyun------------------------- 200*4882a593Smuzhiyun 201*4882a593Smuzhiyun - Questo comitato è fatto di sviluppatori del kernel che si sono offerti 202*4882a593Smuzhiyun volontari per questo lavoro, e pochi altri che non sono proprio volontari. 203