Udviklere af Grsecurity-projektet
I processen med at teste patchen lagde udviklerne mærke til, at compileren, når den byggede, viser en advarsel om blanding af kode og definitioner (strukturen blev defineret efter koden med tildeling af en værdi til en eksisterende variabel):
int indeks = n;
if (n < HBP_NUM) { indeks = array_index_nospec(indeks, HBP_NUM); struct perf_event *bp = tråd->ptrace_bps[indeks];
Linus accepterede
if (n < HBP_NUM) { int index = array_index_nospec(n, HBP_NUM); struct perf_event *bp = tråd->ptrace_bps[indeks];
I juli blev rettelsen også overført til 4.4, 4.9, 4.14, 4.19 og 5.2 stabile kernegrene. Staldvedligeholderne stødte også på advarslen, og i stedet for at tjekke, om den allerede var rettet i Linus' mestergren, lappede de den selv. Problemet er, at de uden megen eftertanke bare
int indeks = n;
if (n < HBP_NUM ){ struct perf_event *bp = thread->ptrace_bps[indeks];
indeks = array_index_nospec(indeks, HBP_NUM);
Kilde: opennet.ru