• Masahiro Yamada's avatar
    kconfig: convert linked list of files to hash table · 980c9e19
    Masahiro Yamada authored
    Currently, a linked list is used to keep track of all the Kconfig
    files that have ever been parsed. Every time the "source" statement
    is encountered, the linked list is traversed to check if the file has
    been opened before. This prevents the same file from being recorded
    in include/config/auto.conf.cmd again.
    
    Given 1500+ Kconfig files parsed, a hashtable is now a more optimal
    data structure.
    
    By the way, you may wonder why we check this in the first place.
    It matters only when the same file is included multiple times.
    In old days, such a use case was forbidden, but commit f094f8a1
    ("kconfig: allow multiple inclusion of the same file") provided a bit
    more flexibility. Of course, it is almost hypothetical...
    Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
    980c9e19
util.c 2.63 KB