'n Fout is in die Linux-kern geïdentifiseer wat veroorsaak dat sommige programme wat AVX gebruik, wanfunksioneer

In die Linux-kern sedert vrystelling 5.2, verskyn 'n Fout wat veroorsaak dat die inhoud van die AVX-register geskend word wanneer teruggekeer word van 'n seinhanteerder wat hanteer word wanneer 'n uitsondering gegooi word (bladsyfout). Die probleem vind plaas wanneer multi-draad programme ("-pthread") wat berekeninge met die AVX register behels, as die kern in GCC 9 gebou is (indien ingebou in vroeëre vrystellings van GCC, verskyn die fout nie, aangesien GCC 9 kas die adres van die draad-plaaslike veranderlike in die register, en vroeër weergawes van GCC laai dit elke keer).

Die probleem veroorsaak dat die program voortydig beëindig word met 'n geheue korrupsie fout. Die mees opvallende en gereelde manifestasie van die fout geword het ineenstort toepassings, geskryf in Go-taal. As gevolg van die opgemerkte probleem, eindig Go-programme voortydig, gewoonlik met die foute "looptydfout: ongeldige geheue-adres of nulwyser-verwysing", "looptyd: onverwagte terugkeer rekenaar" en "segmentasie-oortreding". Die fout in die kern bly onreggestel. Die moontlikheid word oorweeg veranderinge aan die Go-taallooptyd by te voeg om foute op problematiese Linux-kerne selektief te omseil, ten koste van bykomende oorhoofse koste.

Bron: opennet.ru

Voeg 'n opmerking