На прошлой неделе в Linux 7.2 были объединены основные изменения в sched_ext, включая продолжение работы над поддержкой подпланировщиков. Линус Торвальдс назвал код «отвратительным», и теперь в него внесли исправления.
Сам он не возражал против каких-либо функций, над которыми ведётся работа для расширяемой структуры планировщика, основанной на программах BPF пользовательского пространства. Однако Торвальдс был разочарован структурой новых исходных файлов C и заметил: «Пожалуйста, не делайте так отвратительно… правильные иерархические файловые системы существуют с 1965 года».
Ему не понравилось в запросе на слияние sched_ext на прошлой неделе то, что несколько новых файлов кода C и заголовочных файлов с префиксом ext_ были созданы в kernel//sched вместо того, чтобы просто создать новый подкаталог kernel/sched, например kernel/sched/ext/. Это позволило бы избежать добавления префиксов ко многим отдельным файлам.
Торвальдс объединил код, но оставил комментарий:
> create mode 100644 kernel/sched/ext_arena.c
> create mode 100644 kernel/sched/ext_arena.h
> create mode 100644 kernel/sched/ext_cid.c
> create mode 100644 kernel/sched/ext_cid.h
> create mode 100644 kernel/sched/ext_types.hПожалуйста, не делайте этого отвратительно. Подкаталоги существуют не просто так: они позволяют группировать файлы и разделять их.
Использование префиксов имён вместо каталогов — это отвратительно и неправильно. Если у вас так много случайных файлов sched-ext, их нужно обязательно почистить, а не устраивать такой беспорядок.
Я это удалил, но столкнулся с протестом. Правильные иерархические файловые системы существуют с 1965 года.
Теперь был отправлен новый pull request, направленный на реорганизацию исходного кода sched_ext с использованием kernel/sched/ext/. Торвальдс уже объединил код для реструктуризации файлов sched_ext.
В 2024 году Торвальдс обозвал %^!@$% новый код Intel Xe для DRM (Direct Rendering Manager) в Linux 6.8. Он сам исправил его огрехи и призвал сторонних разработчиков и мейнтейнеров проекта тестировать, тестировать и ещё раз тестировать свои патчи.
В 2025 году Торвальдс раскритиковал код тестирования hdrtest, который собирается как часть полной сборки ядра, а также оставляет после себя гадости (turds). Он заявил, что этот код «должен умереть» (needs to die), по крайней мере, с точки зрения разработчиков драйверов без DRM.
Тогда на его высказывание ответила инженер по программному обеспечению Intel Яни Никула: «Скройте все отвратительные гадости в подкаталогах .hdrtest в build tree и поместите дополнительные проверки build‑time для drm за опцию kconfig».
ссылка на оригинал статьи https://habr.com/ru/articles/1051648/