Il deploy di patch sul kernel di una macchina in produzione è importante: di solito, nei casi più comuni, si aggiorna il kernel e si riavvia il sistema operativo. Tuttavia, per ovviare a questo e permettere degli uptime sempre più vicini al 100%, i SUSE Labs hanno messo a punto una tecnologia chiamata KGraft, che permette di applicare patch al kernel e "sostituire" il kernel in esecuzione mentre i servizi di livello superiore rimangono attivi.
Oggi SUSE rilascia come software open source tutto il lavoro svolto su questo tipo di approccio, che purtroppo richiede una prima modifica nel kernel Linux, che va ricompilato con il modulo di kGraft. L´articolo ufficiale è sufficientemente esplicativo riguardo il funzionamento di questo sistema.
kGraft builds on technologies and ideas that are already present in the kernel: ftrace and its mcount-based reserved space in function headers, the INT3/IPI-NMI patching also used in jumplabels, and RCU-like update of code that does not require stopping the kernel. A kGraft patch is a kernel module and fully relies on the in-kernel module loader to link the new code with the kernel. Thanks to all that, the design can be nicely minimalistic.
Vedremo se il futuro di questa "branca" del kernel proseguirà in maniera così buona. Non ci resta che augurarci un futuro senza reboot, anche grazie a SUSE.