[PATCH 1/3] gunzip: Add ability to disable progress indicator

Mattijs Korpershoek mkorpershoek at kernel.org
Thu Jan 29 17:17:19 CET 2026


Hi Marek,

Thank you for the patch.

On Wed, Jan 28, 2026 at 00:57, Marek Vasut <marek.vasut+renesas at mailbox.org> wrote:

> Introduce new environment variable, 'gzwrite_quiet', which disables
> the progress indicator during decompress-write. This is mainly meant
> to prevent disturbing unit test which responds badly to the in-place
> progress update and reduce UART traffic. By default, the indicator is
> left enabled.
>
> Signed-off-by: Marek Vasut <marek.vasut+renesas at mailbox.org>
> ---
> Cc: Alexander Graf <agraf at csgraf.de>
> Cc: Heinrich Schuchardt <xypron.glpk at gmx.de>
> Cc: Ilias Apalodimas <ilias.apalodimas at linaro.org>
> Cc: Jerome Forissier <jerome at forissier.org>
> Cc: Mattijs Korpershoek <mkorpershoek at kernel.org>
> Cc: Neil Armstrong <neil.armstrong at linaro.org>
> Cc: Peng Fan <peng.fan at nxp.com>
> Cc: Quentin Schulz <quentin.schulz at cherry.de>
> Cc: Simon Glass <sjg at chromium.org>
> Cc: Tom Rini <trini at konsulko.com>
> Cc: Yuya Hamamachi <yuya.hamamachi.sx at renesas.com>
> Cc: u-boot at lists.denx.de
> ---
>  lib/gunzip.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/lib/gunzip.c b/lib/gunzip.c
> index 040450c0e79..d31bbb2ba03 100644
> --- a/lib/gunzip.c
> +++ b/lib/gunzip.c
> @@ -83,10 +83,15 @@ __rcode int gunzip(void *dst, int dstlen, unsigned char *src, unsigned long *len
>  }
>
>  #ifdef CONFIG_CMD_UNZIP
> +static bool quiet;
> +
>  __weak
>  void gzwrite_progress_init(ulong expectedsize)
>  {
> -	putc('\n');
> +	quiet = env_get_yesno("gzwrite_quiet") == 1;

I've tried to test the series with:

$ ./test/py/test.py --bd sandbox --build -k ut

(I know ut might not the right filter for this test, but I always test 'ut'
before testing other things)

But I see:

    +make O=/var/home/mkorpershoek/work/upstream/u-boot/build-sandbox -s sandbox_defconfig
    +make O=/var/home/mkorpershoek/work/upstream/u-boot/build-sandbox -s -j14
    ld: warning: enabling an executable stack because of -z execstack command line option
    ld: warning: enabling an executable stack because of -z execstack command line option
    ld: warning: enabling an executable stack because of -z execstack command line option
    ld: warning: enabling an executable stack because of -z execstack command line option
    ld: warning: enabling an executable stack because of -z execstack command line option
    ld: warning: enabling an executable stack because of -z execstack command line option
    ld: warning: enabling an executable stack because of -z execstack command line option
    ld: warning: enabling an executable stack because of -z execstack command line option
    ../lib/gunzip.c: In function ‘gzwrite_progress_init’:
    ../lib/gunzip.c:91:17: error: implicit declaration of function ‘env_get_yesno’ [-Wimplicit-function-declaration]
       91 |         quiet = env_get_yesno("gzwrite_quiet") == 1;
          |                 ^~~~~~~~~~~~~
    make[2]: *** [../scripts/Makefile.build:271: lib/gunzip.o] Error 1
    make[2]: *** Waiting for unfinished jobs....
    make[1]: *** [/var/home/mkorpershoek/work/upstream/u-boot/Makefile:2191: lib] Error 2
    make[1]: *** Waiting for unfinished jobs....
    make: *** [Makefile:189: __sub-make] Error 2

Adding env.h inclusion as following fixes it:

diff --git a/lib/gunzip.c b/lib/gunzip.c
index ed05f1d64d7d..98acf4c5b2a7 100644
--- a/lib/gunzip.c
+++ b/lib/gunzip.c
@@ -8,6 +8,7 @@
 #include <command.h>
 #include <console.h>
 #include <div64.h>
+#include <env.h>
 #include <gzip.h>
 #include <image.h>
 #include <malloc.h>

Maybe this should be included conditionally depending on the command
being enabled or not?

> +
> +	if (!quiet)
> +		putc('\n');
>  }
>
>  __weak
> @@ -94,7 +99,7 @@ void gzwrite_progress(int iteration,
>  		     ulong bytes_written,
>  		     ulong total_bytes)
>  {
> -	if (0 == (iteration & 3))
> +	if (!quiet && !(iteration & 3))
>  		printf("%lu/%lu\r", bytes_written, total_bytes);
>  }
>
> --
> 2.51.0


More information about the U-Boot mailing list