Vývojári projektu Grsecurity
V procese testovania opravy si vývojári všimli, že pri zostavovaní kompilátor zobrazuje varovanie o zmiešaní kódu a definícií (štruktúra bola definovaná za kódom s priradením hodnoty k existujúcej premennej):
int index = n;
if (n < HBP_NUM) { index = array_index_nospec(index, HBP_NUM); struct perf_event *bp = vlákno->ptrace_bps[index];
Linus prijal
if (n < HBP_NUM) { int index = array_index_nospec(n, HBP_NUM); struct perf_event *bp = vlákno->ptrace_bps[index];
V júli bola oprava prenesená aj na stabilné vetvy jadra 4.4, 4.9, 4.14, 4.19 a 5.2. S varovaním sa stretli aj správcovia stajní a namiesto toho, aby skontrolovali, či je už opravené v Linusovej hlavnej vetve, sami si ho opravili. Problém je v tom, že oni bez veľkého rozmýšľania len tak
int index = n;
if (n < HBP_NUM ){ struct perf_event *bp = vlákno->ptrace_bps[index];
index = array_index_nospec(index, HBP_NUM);
Zdroj: opennet.ru