Джейсон Доненфилд (Jason A. Donenfeld), автор на VPN WireGuard, привлече вниманието на разработчиците към наличието на мръсен хак в кода на ядрото на Linux, който променя поведението на процесите, чиито имена започват с буквата „X“. На пръв поглед подобни корекции обикновено се използват в руткити, за да оставят скрита дупка, свързана с процеса, но анализът показа, че промяната е добавена през 2019 г. с цел временно да се отстрани възникналата несъвместимост с потребителското пространство, в съответствие с принципа, че промени в ядрото не трябва да нарушават съвместимостта с приложенията.
Проблеми възникваха при опити за използване на механизма за атомарна промяна на видео режим в прилагания в X.Org сървър DDX драйвер xf86-video-modesetting, което обяснява привързаността към процеси, започващи с буквата „X“ (предполага се, че заобикалящият маневър е приложен към процеса „Xorg“). Почти веднага проблемът в X.Org беше отстранен (използването на атомарен API беше деактивирано по подразбиране), но временното решение не беше премахнато от ядрото и опитът за изпращане на ioctl за атомарна промяна на режима за всички процеси, започващи с буква „X“, все още води до появата на грешка. if (current->comm[0] == 'X' && req->value == 1) { pr_info("разкрит е проблем с атомарна промяна на видео режим, деактивиране на атомарен\n"); return -EOPNOTSUPP; }
Източник: opennet.ru
