Ua ʻike ʻia kahi pahu i loko o ka kernel Linux e hoʻopiʻi ai i kekahi mau polokalamu e hoʻohana ana i ka AVX e hana hewa

Ma ka Linux kernel mai ka hoʻokuʻu ʻana iā 5.2, hōʻikeʻia ʻO kahi hewa e hōʻino ʻia ai nā mea i loko o ka papa inoa AVX i ka wā e hoʻi mai ana mai kahi mea lawe hōʻailona i mālama ʻia ke kiola ʻia kahi ʻokoʻa (page-fault). Loaʻa ka pilikia i ka holo ʻana i nā papahana multi-threaded ("-pthread") e pili ana i ka helu ʻana me ka papa inoa AVX, inā kūkulu ʻia ka kernel ma GCC 9 (inā kūkulu ʻia i nā hoʻokuʻu mua o GCC, ʻaʻole ʻike ʻia ka hewa, no ka mea, ʻo GCC 9 caches. ka helu wahi o ka loilo-local variable i loko o ka papa inoa, a me nā mana mua o GCC e hoʻouka i kēlā me kēia manawa).

ʻO ka pilikia ke kumu o ka hoʻopau mua ʻana o ka polokalamu me kahi hewa palaho hoʻomanaʻo. ʻO ka hōʻike ʻike a ʻike pinepine ʻia o ka hewa ua lilo hāʻule noi, kākau ʻia ma ka ʻōlelo Go. Ma muli o ka pilikia i ʻike ʻia, e hoʻopau koke nā polokalamu Go, maʻamau me nā hewa "runtime error: invalid memory address or nil pointer dereference", "runtime: unexpected return pc" a me "segmentation violation". ʻAʻole paʻa ka pahu i loko o ka kernel. Ke noʻonoʻo ʻia nei ka hiki e hoʻohui i nā hoʻololi i ka holo ʻōlelo Go no ke koho ʻana i nā hewa ma nā kernel Linux pilikia, me ke kumu kūʻai o ke poʻo.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka