Eseguo Debian come mio sistema operativo e Guix come gestore dei pacchetti. Ho anche eseguito (approssimativamente) l'ultimo kernel creato usando Guix. Secondo spettrometro-disgregatore-controllo , il mio kernel ha la mitigazione per v1, v2 e v3.
Tuttavia, l'ultimo GCC stabile (7.3) ha implementato tre nuove bandiere , ovvero -mindirect-branch=
scelta , -mfunction-return=
scelta e -mindirect-branch-register
. È una buona idea ricostruire il mondo con tutti questi flag abilitati? Se sì, quale scelta dovrei scegliere? Ci sono quattro opzioni tra cui scegliere, keep e thunk-extern non sono chiaramente applicabili poiché il primo è un no-op e il successivo richiede un thunk fornito dall'utente. Qualcuno può spiegare la differenza tra thunk e thunk-inline ?
Infine, sembra che gold da Binutils abbia anche introdotto un nuovo flag -z retpolineplt
. Dovrebbe essere abilitato anche?