Linus Torvalds rechazó incluir en el núcleo un cambio que reemplazaba el carácter de tabulación por un espacio en el delimitador del parámetro FTRACE_RECORD_RECURSION_SIZE en la configuración del núcleo Kconfig. El cambio fue propuesto por un desarrollador del proyecto Fedora con la observación de que el uso de tabulaciones provoca fallos en el funcionamiento del parser de configuración. En lugar del cambio propuesto, Linus incluyó en el núcleo su parche, que añade específicamente caracteres de tabulación en la definición de la configuración PAGE_SHIFT, que establece el desplazamiento para diferentes tamaños de páginas de memoria.
La adición de tabulaciones en configuraciones más significativas que FTRACE_RECORD_RECURSION_SIZE se da porque en el archivo de configuración del núcleo se permite el uso tanto de espacios como de tabulaciones, por lo que si el parser no puede analizar correctamente una línea con tabulación, ese es un problema del parser, que debe ser resuelto en él. El comando "make defconfig" acepta correctamente las tabulaciones, por lo que los parsers externos también deberían procesarlas.
La presencia en el Kconfig incluido en el núcleo de no solo espacios, sino también tabulaciones, permitirá identificar parsers problemáticos y estimular su corrección. La idea de ajustar el núcleo a parsers defectuosos se considera perjudicial, ya que incluso si en el Kconfig de referencia siempre hubiera solo espacios, el usuario común es libre de utilizar tabulaciones en las configuraciones de sus sistemas y tal uso podría provocar fallos en parsers externos no corregidos.
Fuente: opennet.ru
