Re: [PATCH v2] bootconfig: Fix testcase to increase max node

Steven Rostedt
2023-03-15T14:22:43Z

On Wed, 15 Mar 2023 22:54:08 +0900
"Masami Hiramatsu (Google)" <mhiramat@kernel.org> wrote:

> From: Masami Hiramatsu (Google) <mhiramat@kernel.org>
>
> Since commit 6c40624930c5 ("bootconfig: Increase max nodes of bootconfig
> from 1024 to 8192 for DCC support") increased the max number of bootconfig
> node to 8192, the bootconfig testcase of the max number of nodes fails.
> To fix this issue, we can not simply increase the number in the test script
> because the test bootconfig file becomes too big (>32KB). To fix that, we
> can use a combination of three alphabets (26^3 = 17576). But with that,
> we can not express the 8193 (just one exceed from the limitation) because
> it also exceeds the max size of bootconfig. So, the first 26 nodes will just
> use one alphabet.
>
> With this fix, test-bootconfig.sh passes all tests.
>
> Reported-by: Heinz Wiesinger <pprkut@slackware.com>
> Link: https://lore.kernel.org/all/2463802.XAFRqVoOGU@amaterasu.liwjatan.org
> Fixes: 6c40624930c5 ("bootconfig: Increase max nodes of bootconfig from 1024 to 8192 for DCC support")
> Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>

Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org>

-- Steve

> ---
> tools/bootconfig/test-bootconfig.sh | 12 ++++++++----
> 1 file changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/tools/bootconfig/test-bootconfig.sh b/tools/bootconfig/test-bootconfig.sh
> index f68e2e9eef8b..a2c484c243f5 100755
> --- a/tools/bootconfig/test-bootconfig.sh
> +++ b/tools/bootconfig/test-bootconfig.sh
> @@ -87,10 +87,14 @@ xfail grep -i "error" $OUTFILE
>
> echo "Max node number check"
>
> -echo -n > $TEMPCONF
> -for i in `seq 1 1024` ; do
> - echo "node$i" >> $TEMPCONF
> -done
> +awk '
> +BEGIN {
> + for (i = 0; i < 26; i += 1)
> + printf("%c\n", 65 + i % 26)
> + for (i = 26; i < 8192; i += 1)
> + printf("%c%c%c\n", 65 + i % 26, 65 + (i / 26) % 26, 65 + (i / 26 / 26))
> +}
> +' > $TEMPCONF
> xpass $BOOTCONF -a $TEMPCONF $INITRD
>
> echo "badnode" >> $TEMPCONF