
Come al solito, il nostro ‘dittatore benevole‘ è al comando e decide quando e come mettere le mani nel kernel Linux, proprio come ha fatto di recente.
DAMON (Data Access MONitor) è una soluzione avanzata per il monitoraggio dell’accesso ai dati nel kernel Linux, sviluppata da Amazon e altri collaboratori. Questo strumento è pensato per ottimizzare le prestazioni e l’efficienza dei sistemi, ma non è così rivoluzionario da giustificare la sua attivazione predefinita in tutte le compilazioni del kernel Linux, come ha deciso Linus Torvalds.
La Proposta di Attivazione Predefinita
Durante la fase di integrazione delle modifiche per la versione 6.16 del kernel Linux, è stata inserita una modifica (patch) per attivare automaticamente DAMON. La configurazione CONFIG_DAMON, che è l’opzione di configurazione del kernel Linux che permette di abilitare o disabilitare DAMON durante la compilazione del kernel Linux, era stata impostata per essere attivata di default. Questa decisione era basata sulla seguente motivazione:
As of this writing, multiple major distros including Alma, Amazon, Android, CentOS, Debian, Fedora, and Oracle are build-enabling DAMON (set CONFIG_DAMON). Enabling it by default will save configuration setup time for the current and future DAMON users.
Build-enabling DAMON does not introduce a real risk since it makes no behavioral change by default. It requires explicit user requests to do anything. Only one potential risk is making the size of the kernel a little bit larger. On a production-purpose configuration, it increases the resulting kernel package size by about 0.1 % of the final package file. I believe that’s too small to be a real problem in common setups.
Hence, the benefit of enabling CONFIG_DAMON outweighs the potential risk. Set CONFIG_DAMON by defaultAd oggi, molte distribuzioni GNU/Linux importanti, tra cui Alma, Amazon, Android, CentOS, Debian, Fedora e Oracle, stanno abilitando DAMON durante la compilazione (impostando CONFIG_DAMON). Abilitarlo di default risparmierà tempo di configurazione per gli utenti attuali e futuri di DAMON.Abilitare DAMON durante la compilazione non introduce rischi reali poiché non comporta cambiamenti comportamentali di default. Richiede richieste esplicite da parte dell’utente per svolgere qualsiasi azione. L’unico potenziale rischio è un leggero aumento delle dimensioni del kernel Linux. In una configurazione per scopi produttivi, aumenta le dimensioni del pacchetto del kernel Linux risultante di circa lo 0.1% del file finale. Credo che sia troppo piccolo per essere un problema reale nelle configurazioni comuni.
Pertanto, i benefici dell’attivazione di CONFIG_DAMON superano il potenziale rischio. Imposta CONFIG_DAMON di default.
La Reazione di Linus Torvalds
Questa modifica inizialmente è sfuggita all’attenzione di Linus Torvalds, ma successivamente gli è stata segnalata. Linus Torvalds ha deciso di annullare la modifica con il seguente commento:
This reverts commit 28615e6eed152f2fda5486680090b74aeed7b554.
No, we don’t make random features default to being on.Questa modifica annulla il commit 28615e6eed152f2fda5486680090b74aeed7b554.
No, non attiviamo funzionalità casuali di default.
Questa decisione è in linea con altre valutazioni fatte da Linus Torvalds in passato riguardo all’attivazione di nuove funzionalità di default. Secondo lui, per attivare nuove funzionalità di default, è necessaria una ragione molto valida. Altrimenti, il kernel Linux non lo fa, ad esempio: “Non attiviamo nuovi driver casuali di default. E sicuramente non lo facciamo quando sono driver strani di cui la maggior parte delle persone non ha mai sentito parlare.”
Con l’annullamento della modifica, DAMON è ora disabilitato di default nel codice Git più recente del kernel Linux e in vista della prossima uscita del kernel Linux 6.16-rc2 di questo fine settimana. Questa decisione riflette l’approccio cauto e ponderato di Linus Torvalds nell’introduzione di nuove funzionalità nel kernel Linux, garantendo che solo le modifiche più necessarie e ben testate vengano attivate di default.
Come Provare DAMON
Sebbene DAMON non sia attivato automaticamente nelle configurazioni standard del kernel Linux, gli utenti che desiderano utilizzare questa funzionalità avanzata di monitoraggio dell’accesso ai dati possono abilitarla manualmente durante il processo di compilazione del kernel. Questo approccio consente agli utenti di personalizzare il proprio kernel per includere DAMON, sfruttandone i vantaggi senza modificare le impostazioni predefinite del kernel Linux.
Per abilitare DAMON, è necessario accedere al menu di configurazione del kernel, generalmente tramite l’interfaccia make menuconfig
o make xconfig
, e selezionare l’opzione CONFIG_DAMON. Una volta attivata, questa configurazione permette di compilare il kernel Linux con il supporto per DAMON, rendendo disponibile la funzionalità al successivo avvio del sistema.
Per una guida dettagliata su come abilitare DAMON e configurarlo correttamente, è possibile fare riferimento alla documentazione ufficiale del kernel Linux, che fornisce istruzioni passo-passo e consigli utili per ottimizzare l’uso di questa funzionalità. La documentazione è disponibile al seguente link: Documentazione ufficiale del kernel Linux.
Ma attenzione: ricompilare il kernel Linux con le impostazioni di default, anziché utilizzare i parametri specifici della propria distribuzione GNU/Linux, può comportare rischi significativi. Le distribuzioni GNU/Linux sono generalmente ottimizzate per funzionare con configurazioni del kernel Linux specificamente testate e adattate per garantire stabilità e compatibilità con il software e l’hardware supportato. Per evitare problemi, esporta la configurazione attuale prima della compilazione:
cp /boot/config-$(uname -r) .config
make oldconfig
Ricorda sempre che ricompilare il kernel Linux può offrire vantaggi in termini di prestazioni e personalizzazione, ma è un’operazione da eseguire con consapevolezza per evitare conseguenze indesiderate.
Fonte: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/mm/damon?id=28615e6eed152f2fda5486680090b74aeed7b554
Fonte: https://www.phoronix.com/news/Linux-DAMON-By-Default-No
Source: Read More