Linus Torvalds a refusé d'intégrer dans le noyau le changement remplaçant le caractère de tabulation par un espace dans le séparateur du paramètre FTRACE_RECORD_RECURSION_SIZE dans la configuration Kconfig. Ce changement a été proposé par un développeur du projet Fedora, avec la remarque que l'utilisation de tabulations provoque un échec du parseur de configuration. Au lieu de ce changement proposé, Linus a inclus dans le noyau son patch qui ajoute spécifiquement des caractères de tabulation à la définition du paramètre PAGE_SHIFT, qui définit le décalage pour différentes tailles de pages mémoire.
L'ajout de tabulations dans des paramètres plus significatifs que FTRACE_RECORD_RECURSION_SIZE s'explique par le fait que le fichier de configuration du noyau autorise à la fois des espaces et des tabulations, donc si le parseur ne parvient pas à analyser correctement une ligne avec une tabulation, c'est un problème du parseur qui doit être résolu en lui. La commande « make defconfig » accepte correctement les tabulations, c'est pourquoi les parseurs externes devraient également les traiter.
La présence, dans le Kconfig livré avec le noyau, non seulement d'espaces mais aussi de tabulations permettra d'identifier les parseurs problématiques et de stimuler leurs corrections. L'idée d'adapter le noyau pour des parseurs défaillants est perçue comme nuisible, car même si le Kconfig de référence n'aura toujours que des espaces, l'utilisateur ordinaire a le droit d'utiliser des tabulations dans ses configurations sur ses systèmes, et cette utilisation peut entraîner des échecs dans des parseurs tiers non corrigés.
Source : opennet.ru
