Mga developer ng proyekto ng Grsecurity
Habang sinusubukan ang patch, napansin ng mga developer na kapag nagtatayo, ang compiler ay nagpapakita ng babala tungkol sa paghahalo ng code at mga kahulugan (ang istraktura ay tinukoy pagkatapos ng code, na nagtatalaga ng isang halaga sa isang umiiral na variable):
int index = n;
if (n <HBP_NUM) { index = array_index_nospec(index, HBP_NUM); struct perf_event *bp = thread->ptrace_bps[index];
Tinanggap ni Linus
if (n <HBP_NUM) { int index = array_index_nospec(n, HBP_NUM); struct perf_event *bp = thread->ptrace_bps[index];
Noong Hulyo, ang pag-aayos ay nai-port din sa mga matatag na sanga ng kernel 4.4, 4.9, 4.14, 4.19 at 5.2. Nakatagpo din ng babala ang mga maintainer ng mga stable branch at, sa halip na tingnan kung naayos na ito sa master branch ni Linus, sila mismo ang nag-ayos. Ang problema ay na walang talagang iniisip tungkol dito, sila lang
int index = n;
if (n < HBP_NUM ){ struct perf_event *bp = thread->ptrace_bps[index];
index = array_index_nospec(index, HBP_NUM);
Pinagmulan: opennet.ru