Message ID | 1575979754-184896-1-git-send-email-john.garry@huawei.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | merge_config.sh: Add option for allmodconfig | expand |
On 10/12/2019 12:09, John Garry wrote: Hi Masahiro, Could you please consider this patch? Thanks, John > Recently there has been some work in reporting and fixing bugs in booting > an allmodconfig kernel - here are a few examples: > > https://lore.kernel.org/linux-edac/304df85b-8b56-b77e-1a11-aa23769f2e7c@huawei.com/T/#t > https://lore.kernel.org/linux-ide/bdf02e03-86a1-3d35-2908-28187f504495@huawei.com/T/#t > https://lore.kernel.org/netdev/CADYN=9LCPfbpwdTWKw03B22-y3Text=RWXW7XP7wJBHYsMOgrA@mail.gmail.com/ > https://sourceforge.net/p/openipmi/mailman/message/36871567/ > > If we want to boot an allmodconfig kernel we may still want to force some > loadable modules built-in, like UART drivers. Or just still turn off some > configs. > > So add an option to add add fragments to an allmodconfig kernel. > > Signed-off-by: John Garry <john.garry@huawei.com> > > diff --git a/scripts/kconfig/merge_config.sh b/scripts/kconfig/merge_config.sh > index 63c8565206a4..01697fb6dfbe 100755 > --- a/scripts/kconfig/merge_config.sh > +++ b/scripts/kconfig/merge_config.sh > @@ -23,6 +23,7 @@ clean_up() { > usage() { > echo "Usage: $0 [OPTIONS] [CONFIG [...]]" > echo " -h display this help text" > + echo " -a use allmodconfig instead of alldefconfig" > echo " -m only merge the fragments, do not execute the make command" > echo " -n use allnoconfig instead of alldefconfig" > echo " -r list redundant entries when merging fragments" > @@ -41,6 +42,11 @@ CONFIG_PREFIX=${CONFIG_-CONFIG_} > > while true; do > case $1 in > + "-a") > + ALLTARGET=allmodconfig > + shift > + continue > + ;; > "-n") > ALLTARGET=allnoconfig > shift > @@ -171,6 +177,7 @@ fi > > # Use the merged file as the starting point for: > # alldefconfig: Fills in any missing symbols with Kconfig default > +# allmodconfig: Fills in any missing symbols with =m when loadable > # allnoconfig: Fills in any missing symbols with # CONFIG_* is not set > make KCONFIG_ALLCONFIG=$TMP_FILE $OUTPUT_ARG $ALLTARGET > >
On Mon, Jan 6, 2020 at 6:18 PM John Garry <john.garry@huawei.com> wrote: > > On 10/12/2019 12:09, John Garry wrote: > > Hi Masahiro, > > Could you please consider this patch? > > Thanks, > John > > > Recently there has been some work in reporting and fixing bugs in booting > > an allmodconfig kernel - here are a few examples: > > > > https://lore.kernel.org/linux-edac/304df85b-8b56-b77e-1a11-aa23769f2e7c@huawei.com/T/#t > > https://lore.kernel.org/linux-ide/bdf02e03-86a1-3d35-2908-28187f504495@huawei.com/T/#t > > https://lore.kernel.org/netdev/CADYN=9LCPfbpwdTWKw03B22-y3Text=RWXW7XP7wJBHYsMOgrA@mail.gmail.com/ > > https://sourceforge.net/p/openipmi/mailman/message/36871567/ > > > > If we want to boot an allmodconfig kernel we may still want to force some > > loadable modules built-in, like UART drivers. Or just still turn off some > > configs. I do not understand why you need to use merge_config.sh for this purpose. KCONFIG_ALLCONFIG=<path-to-your-config-fragment> make allmodconfig should work.
On 06/01/2020 18:04, Masahiro Yamada wrote: > On Mon, Jan 6, 2020 at 6:18 PM John Garry <john.garry@huawei.com> wrote: >> >> On 10/12/2019 12:09, John Garry wrote: >> >> Hi Masahiro, >> >> Could you please consider this patch? >> >> Thanks, >> John >> >>> Recently there has been some work in reporting and fixing bugs in booting >>> an allmodconfig kernel - here are a few examples: >>> >>> https://lore.kernel.org/linux-edac/304df85b-8b56-b77e-1a11-aa23769f2e7c@huawei.com/T/#t >>> https://lore.kernel.org/linux-ide/bdf02e03-86a1-3d35-2908-28187f504495@huawei.com/T/#t >>> https://lore.kernel.org/netdev/CADYN=9LCPfbpwdTWKw03B22-y3Text=RWXW7XP7wJBHYsMOgrA@mail.gmail.com/ >>> https://sourceforge.net/p/openipmi/mailman/message/36871567/ >>> >>> If we want to boot an allmodconfig kernel we may still want to force some >>> loadable modules built-in, like UART drivers. Or just still turn off some >>> configs. > > > I do not understand why you need to use merge_config.sh > for this purpose. > > KCONFIG_ALLCONFIG=<path-to-your-config-fragment> make allmodconfig > > should work. > > Right, I could use that. But generally some people like to use merge_config.sh directly: ./scripts/kconfig/merge_config.sh [-a] fragment so nice to have -a option for completeness. Thanks, john
On Tue, Jan 7, 2020 at 6:19 PM John Garry <john.garry@huawei.com> wrote: > > On 06/01/2020 18:04, Masahiro Yamada wrote: > > On Mon, Jan 6, 2020 at 6:18 PM John Garry <john.garry@huawei.com> wrote: > >> > >> On 10/12/2019 12:09, John Garry wrote: > >> > >> Hi Masahiro, > >> > >> Could you please consider this patch? > >> > >> Thanks, > >> John > >> > >>> Recently there has been some work in reporting and fixing bugs in booting > >>> an allmodconfig kernel - here are a few examples: > >>> > >>> https://lore.kernel.org/linux-edac/304df85b-8b56-b77e-1a11-aa23769f2e7c@huawei.com/T/#t > >>> https://lore.kernel.org/linux-ide/bdf02e03-86a1-3d35-2908-28187f504495@huawei.com/T/#t > >>> https://lore.kernel.org/netdev/CADYN=9LCPfbpwdTWKw03B22-y3Text=RWXW7XP7wJBHYsMOgrA@mail.gmail.com/ > >>> https://sourceforge.net/p/openipmi/mailman/message/36871567/ > >>> > >>> If we want to boot an allmodconfig kernel we may still want to force some > >>> loadable modules built-in, like UART drivers. Or just still turn off some > >>> configs. > > > > > > I do not understand why you need to use merge_config.sh > > for this purpose. > > > > KCONFIG_ALLCONFIG=<path-to-your-config-fragment> make allmodconfig > > > > should work. > > > > > > Right, I could use that. But generally some people like to use > merge_config.sh directly: > > ./scripts/kconfig/merge_config.sh [-a] fragment > > so nice to have -a option for completeness. > Honestly, I am getting scared about people extending this script more and more to do what they want. Since allmodconfig works enough for this usecase, I do not see a good reason to add the new option.
On 09/01/2020 16:21, Masahiro Yamada wrote: > On Tue, Jan 7, 2020 at 6:19 PM John Garry <john.garry@huawei.com> wrote: >> >> On 06/01/2020 18:04, Masahiro Yamada wrote: >>> On Mon, Jan 6, 2020 at 6:18 PM John Garry <john.garry@huawei.com> wrote: >>>> >>>> On 10/12/2019 12:09, John Garry wrote: >>>> >>>> Hi Masahiro, >>>> >>>> Could you please consider this patch? >>>> >>>> Thanks, >>>> John >>>> >>>>> Recently there has been some work in reporting and fixing bugs in booting >>>>> an allmodconfig kernel - here are a few examples: >>>>> >>>>> https://lore.kernel.org/linux-edac/304df85b-8b56-b77e-1a11-aa23769f2e7c@huawei.com/T/#t >>>>> https://lore.kernel.org/linux-ide/bdf02e03-86a1-3d35-2908-28187f504495@huawei.com/T/#t >>>>> https://lore.kernel.org/netdev/CADYN=9LCPfbpwdTWKw03B22-y3Text=RWXW7XP7wJBHYsMOgrA@mail.gmail.com/ >>>>> https://sourceforge.net/p/openipmi/mailman/message/36871567/ >>>>> >>>>> If we want to boot an allmodconfig kernel we may still want to force some >>>>> loadable modules built-in, like UART drivers. Or just still turn off some >>>>> configs. >>> >>> >>> I do not understand why you need to use merge_config.sh >>> for this purpose. >>> >>> KCONFIG_ALLCONFIG=<path-to-your-config-fragment> make allmodconfig >>> >>> should work. >>> >>> >> >> Right, I could use that. But generally some people like to use >> merge_config.sh directly: >> >> ./scripts/kconfig/merge_config.sh [-a] fragment >> >> so nice to have -a option for completeness. >> > > > Honestly, I am getting scared > about people extending this script more and more > to do what they want. > > Since allmodconfig works enough for this usecase, > I do not see a good reason to add the new option. > ok, fine. cheers
diff --git a/scripts/kconfig/merge_config.sh b/scripts/kconfig/merge_config.sh index 63c8565206a4..01697fb6dfbe 100755 --- a/scripts/kconfig/merge_config.sh +++ b/scripts/kconfig/merge_config.sh @@ -23,6 +23,7 @@ clean_up() { usage() { echo "Usage: $0 [OPTIONS] [CONFIG [...]]" echo " -h display this help text" + echo " -a use allmodconfig instead of alldefconfig" echo " -m only merge the fragments, do not execute the make command" echo " -n use allnoconfig instead of alldefconfig" echo " -r list redundant entries when merging fragments" @@ -41,6 +42,11 @@ CONFIG_PREFIX=${CONFIG_-CONFIG_} while true; do case $1 in + "-a") + ALLTARGET=allmodconfig + shift + continue + ;; "-n") ALLTARGET=allnoconfig shift @@ -171,6 +177,7 @@ fi # Use the merged file as the starting point for: # alldefconfig: Fills in any missing symbols with Kconfig default +# allmodconfig: Fills in any missing symbols with =m when loadable # allnoconfig: Fills in any missing symbols with # CONFIG_* is not set make KCONFIG_ALLCONFIG=$TMP_FILE $OUTPUT_ARG $ALLTARGET
Recently there has been some work in reporting and fixing bugs in booting an allmodconfig kernel - here are a few examples: https://lore.kernel.org/linux-edac/304df85b-8b56-b77e-1a11-aa23769f2e7c@huawei.com/T/#t https://lore.kernel.org/linux-ide/bdf02e03-86a1-3d35-2908-28187f504495@huawei.com/T/#t https://lore.kernel.org/netdev/CADYN=9LCPfbpwdTWKw03B22-y3Text=RWXW7XP7wJBHYsMOgrA@mail.gmail.com/ https://sourceforge.net/p/openipmi/mailman/message/36871567/ If we want to boot an allmodconfig kernel we may still want to force some loadable modules built-in, like UART drivers. Or just still turn off some configs. So add an option to add add fragments to an allmodconfig kernel. Signed-off-by: John Garry <john.garry@huawei.com>