Kuondoa kinu cha msimbo cha Linux ambacho hubadilisha tabia kwa michakato inayoanza na herufi X

Jason A. Donenfeld, mwandishi wa VPN WireGuard, alivuta hisia za wasanidi programu kwenye udukuzi chafu uliopo kwenye msimbo wa Linux kernel ambao hubadilisha tabia ya michakato ambayo majina yake huanza na herufi "X". Kwa mtazamo wa kwanza, marekebisho kama haya kwa kawaida hutumiwa katika vifaa vya mizizi kuacha mwanya uliofichwa katika mchakato wa kufunga mchakato, lakini uchanganuzi ulibaini kuwa mabadiliko hayo yaliongezwa mnamo 2019 ili kurekebisha kwa muda ukiukaji wa utangamano wa nafasi ya watumiaji ibukizi, kwa mujibu wa kanuni inayobadilika kernel haipaswi kuvunja utangamano na programu.

Matatizo yalizuka wakati wa kujaribu kutumia utaratibu wa kubadilisha hali ya video kiotomatiki katika kiendeshi cha DDX xf86-video-modesetting inayotumika kwenye seva ya X.Org, ambayo ilitokana na kuunganishwa kwa michakato inayoanza na herufi "X" (ilichukuliwa kwamba suluhisho lilitumika kwa mchakato wa "Xorg"). Karibu mara moja shida katika X.Org ilirekebishwa (matumizi ya API ya atomiki yalizimwa kwa chaguo-msingi), lakini walisahau kuondoa urekebishaji wa muda kutoka kwa kernel na jaribio la kutuma ioctl kubadilisha hali ya atomiki kwa michakato yote inayoanza na. herufi "X" bado inaendelea kusababisha kurudisha hitilafu. ikiwa (sasa->comm[0] == 'X' && req->thamani == 1) {pr_info("nafasi ya mtumiaji ya modi ya atomiki iliyovunjika imegunduliwa, inalemaza atomiki\n"); kurudi -EOPNOTSUPP; }

Chanzo: opennet.ru

Kuongeza maoni