Линус Торвальдс удалил из ядра Linux небезопасные функции __get_user() и __put_user() для x86
Торвальдс удалил из x86-части ядра Linux функции __get_user() и __put_user() вместе с интерфейсами: 48 коммитов, 50 файлов, минус 801 строка. На современных CPU они оказались медленнее стандартных из-за затрат на STAC/CLAC и не проверяли адреса. Часть конвертации выполнена с помощью Claude.
- Удаление заняло 48 коммитов и затронуло 50 файлов, код сократился на 801 строку
- На современных CPU STAC/CLAC дороже проверки диапазона, поэтому функции стали медленнее
- Отсутствие проверки адреса делало __get_user() и __put_user() небезопасными
- Нетривиальные случаи на sparc32, m68k и MIPS оставлены их мейнтейнерам
Читать дальше
Софт