Skip to content
  • Steven Rostedt's avatar
    localmodconfig: Process source kconfig files as they are found · ced9cb1a
    Steven Rostedt authored
    A bug was reported that caused localmodconfig to not keep all the
    dependencies of ATH9K. This was caused by the kconfig file:
    
    In drivers/net/wireless/ath/Kconfig:
    
    ---
    if ATH_CARDS
    
    config ATH_DEBUG
            bool "Atheros wireless debugging"
            ---help---
              Say Y, if you want to debug atheros wireless drivers.
              Right now only ath9k makes use of this.
    
    source "drivers/net/wireless/ath/ath5k/Kconfig"
    source "drivers/net/wireless/ath/ath9k/Kconfig"
    source "drivers/net/wireless/ath/carl9170/Kconfig"
    source "drivers/net/wireless/ath/ath6kl/Kconfig"
    source "drivers/net/wireless/ath/ar5523/Kconfig"
    source "drivers/net/wireless/ath/wil6210/Kconfig"
    
    endif
    ---
    
    The current way kconfig works, it processes new source files after the
    first file is completed. It creates an array of new source config files
    and when the one file is finished, it continues with the next file.
    
    Unfortunately, this means that it loses the fact that the source file is
    within an "if" statement, and this means that each of these source file's
    configs will not have the proper dependencies set.
    
    As ATH9K requires ATH_CARDS set, the localmodconfig did not see that
    dependency, and did not enable ATH_CARDS. When the oldconfig was run, it
    forced ATH9K to be disabled.
    
    Link: http://lkml.kernel.org/r/alpine.DEB.2.02.1304291022320.9234@oneiric
    
    
    
    Cc: stable@vger.kernel.org # 3.8+
    Reported-by: default avatarRobert P. J. Day <rpjday@crashcourse.ca>
    Tested-by: default avatarRobert P. J. Day <rpjday@crashcourse.ca>
    Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
    ced9cb1a