Da quando il kernel su Arch è stato aggiornato alla versione 3, la gestione dello swap è diventata totalmente instabile e sono spesso costretto a spegnere il computer forzatamente. A volte basta anche solo un sito con molte immagini su firefox per mandare in crisi il computer. Oggi ho provato ad installare il kernel26-lts e con mia sorpresa tutto funziona bene come un tempo. Vi espongo il mio esperimento:
Ho due hard disk. Nel primo ho la partizione di root e nel secondo la partizione di swap. Ho compilato questo programma mangia-ram per testare la gestione della memoria. Ecco i risultati:
Su linux 3.1.6-1 la memoria fisica viene progressivamente riempita e lo swap entra in azione ogni tanto. Quando la ram è molto piena (98%), il sistema invece di usare la partizione di swap inizia a far macinare l'hard disk dove riesiede la partizione di root, il sistema diventa inutilzzabile e sono costretto a fare un hard reset.
Sul kernel26-lts il comportamento è totalmente diverso: la ram si riempie progressivamente come prima, ma quando essa raggiunge il 98% entra in azione lo swap. Anche se sta swappando, il sistema funziona benissimo e risponde velocemente. Addirittura, se lo lascio fare, la partizione di swap viene riempita fino all'orlo e il processo mangia-ram viene automaticamente ucciso.
Quindi la domanda è questa: cosa posso fare per ottenere lo stesso comportamento con il nuovo kernel? Ho provato a regolare swappiness e tantissimi altri parametri senza alcun risultato. Il problema sembra essere di Linux e non di Arch, perché ho sperimentato lo stesso problema con un'altra distribuzione che adotta il kernel 3.x. Esiste una soluzione o sono costretto ad usare il vecchio kernel?