Линус Торвальдс выступил против парсеров Kconfig, не поддерживающих табуляцию

Линус Торвальдс отказался принимать в ядро изменение, заменяющее символ табуляции на пробел в разделителе параметра FTRACE_RECORD_RECURSION_SIZE в конфигурации ядра Kconfig. Изменение было предложено разработчиком проекта Fedora с примечанием, что использование табуляций приводит к сбою в работе парсера конфигурации. Вместо предложенного изменения Линус включил в ядро свой патч, специально добавляющий символы табуляции в определение настройки PAGE_SHIFT, задающей смещение для различных размеров страниц памяти.

Добавление табуляций в настройки, более значительные, чем FTRACE_RECORD_RECURSION_SIZE, объясняется тем, что в файле с настройками ядра допускается использование как пробелов, так и табуляций, поэтому если парсер не может нормально разобрать строку с табуляцией - это проблема парсера, которая должна быть устранена в нём. Команда "make defconfig" корректно принимает табуляции, поэтому и внешние парсеры тоже должны их обрабатывать.

Присутствие в поставляемом в ядре Kconfig не только пробелов, но и табуляций, позволит выявлять проблемные парсеры и стимулировать их исправление. Идея подгонять ядро под сбойные парсеры воспринимается как ущербная, так как даже если в эталонном Kconfig всегда будут только пробелы, обычный пользователь волен использовать табуляции в настройках на своих системах и подобное использование может привести к сбоям в неисправленных сторонних парсерах.

Источник: https://www.opennet.ru/opennews/art.shtml?num=61021

Sign in to participate in the conversation
MustUdon

I like Twitter, but, Mastodon it is so excited! Feel free to register it is server just for fun! Usefull links https://instances.social https://www.reddit.com/r/Mastodon/comments/yugh2o/some_useful_mastodon_lists/?utm_source=share&utm_medium=web2x&context=3