Операционные системы

Kconfirm предложили для очистки системы конфигурации ядра Linux

Kconfirm Linux kernel

Для ядра Linux разрабатывается новый инструмент Kconfirm, который должен помочь находить ошибки и спорные места в Kconfig — системе конфигурации сборок Linux kernel. Инструмент уже представлен в Linux kernel mailing list и теперь опубликован в виде RFC v2 patch series.

Kconfirm нацелен на автоматическую проверку Kconfig-файлов по всему дереву исходников ядра. Он ищет dead code, constant conditions, invalid ranges, дублирующиеся зависимости и мёртвые веб-ссылки в help-текстах.

Что умеет Kconfirm

По данным Phoronix, инструмент уже помог выявить dead code в Kconfig-файлах по дереву ядра. В Linux 7.0 Kconfirm обнаружил более 700 дублирующихся зависимостей.

Для Linux 7.1-rc2 результаты проверки выглядят так:

  • 489 alarms при дефолтном наборе проверок;
  • 1,789 alarms при включении дополнительных проверок.

Отдельно подчёркивается цель проекта — zero false-positives, то есть стремление к проверкам без ложных срабатываний. Сам Kconfirm написан на Rust.

Kconfig — один из ключевых механизмов сборки ядра Linux: от него зависит, какие функции, драйверы и подсистемы попадут в конкретную конфигурацию. Ошибки в таких файлах могут годами оставаться незаметными, особенно если они связаны с устаревшими условиями, недостижимыми опциями или лишними зависимостями.

Kconfirm не добавляет новую пользовательскую функцию в Linux, но может улучшить качество инфраструктуры ядра. Если инструмент примут в mainline, он станет частью процесса очистки и проверки конфигурационной системы Linux kernel.


Пока нет подтверждения, что Kconfirm будет включён в основную ветку ядра Linux. Также не раскрыто, какие из найденных проблем уже исправлены и входят ли 700+ duplicate dependencies из Linux 7.0 в число предупреждений, полученных для Linux 7.1-rc2.

Источник: Phoronix

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x