Re: [PATCH 18/48] klp-build: Fix hang on out-of-date .config
From: Song Liu
Date: Fri Apr 24 2026 - 17:52:20 EST
On Wed, Apr 22, 2026 at 9:04 PM Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:
>
> If .config is out of date with the kernel source, 'make syncconfig'
> hangs while waiting for user input on new config options. Detect the
> mismatch and return an error.
>
> Fixes: 6f93f7b06810 ("livepatch/klp-build: Fix inconsistent kernel version")
> Signed-off-by: Josh Poimboeuf <jpoimboe@xxxxxxxxxx>
> ---
> scripts/livepatch/klp-build | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/scripts/livepatch/klp-build b/scripts/livepatch/klp-build
> index 0ad7e6631314..81b35fc10877 100755
> --- a/scripts/livepatch/klp-build
> +++ b/scripts/livepatch/klp-build
> @@ -306,7 +306,12 @@ set_kernelversion() {
>
> stash_file "$file"
>
> - kernelrelease="$(cd "$SRC" && make syncconfig &>/dev/null && make -s kernelrelease)"
> + if [[ -n "$(make -s listnewconfig 2>/dev/null)" ]]; then
> + die ".config mismatch, check your .config or run 'make olddefconfig'"
> + fi
> + make syncconfig &>/dev/null || die "make syncconfig failed"
> +
> + kernelrelease="$(cd "$SRC" && make -s kernelrelease)"
Do we really need cd "$SRC" here? If so, we need it before
all the make commands, right?
Thanks,
Song
> [[ -z "$kernelrelease" ]] && die "failed to get kernel version"
>
> sed -i "2i echo $kernelrelease; exit 0" scripts/setlocalversion
> --
> 2.53.0
>
>