[PATCH] Re-enable warning for non-existent symbols.

Sascha Hauer sha at pengutronix.de
Tue Mar 1 01:18:59 PST 2022


Hi,

On Wed, Feb 23, 2022 at 08:30:25PM +0100, Christian Melki wrote:
> From the kernel:
> Commit f072181e6403b0fe2e2aa800a005497b748fd284 ("kconfig: drop the
> ""trying to assign nonexistent symbol" warning").
> 
> Rationale behind re-enabling this is that as an embedded developer,
> I often find myself doing oldconfigs during upgrades. Symbols
> do change names and are sometimes lost silently, with the occasional
> headache. My need for these warnings are probably different than
> the need of the typical kernel developer.
> 
> (Un)fortunatly, a lot of projects directly inherit the kernel kconfig/lxdialog
> variant without much thought into their own symbols and practices.
> The kernel itself has some 1k+ non-existent symbols in various
> defconfigs as developers are not nagged about their cleanliness.
> 
> This warning could do well in various projects. Barebox, ptxdist,
> U-boot, busybox etc.

I am still unsure about this one. First of all Masahiro frequently
syncs the kconfig files with recent Linux, so I don't know how long
this change will last. Then from time to time we regenerate defconfigs
which means the warnings will just vanish without further notice.

Maybe you just have to do a

make x_defconfig; make savedefconfig; mv defconfig arch/y/configs/x_defconfig; git diff

from time to time.

Sascha

> 
> Signed-off-by: Christian Melki <christian.melki at t2data.com>
> ---
>  scripts/kconfig/confdata.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c
> index cf72680cd..d189e088d 100644
> --- a/scripts/kconfig/confdata.c
> +++ b/scripts/kconfig/confdata.c
> @@ -439,6 +439,7 @@ load:
>  			if (def == S_DEF_USER) {
>  				sym = sym_find(line + 2 + strlen(CONFIG_));
>  				if (!sym) {
> +					conf_warning("trying to assign nonexistent symbol %s", line + 2 + strlen(CONFIG_));
>  					conf_set_changed(true);
>  					continue;
>  				}
> @@ -481,8 +482,10 @@ load:
>  					 * include/config/FOO must be touched.
>  					 */
>  					conf_touch_dep(line + strlen(CONFIG_));
> -				else
> +				else {
>  					conf_set_changed(true);
> +					conf_warning("trying to assign nonexistent symbol %s", line + strlen(CONFIG_));
> +				}
>  				continue;
>  			}
>  
> -- 
> 2.30.2
> 
> 
> _______________________________________________
> barebox mailing list
> barebox at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/barebox
> 

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list