linux-kselftest.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 RESEND] kunit: fix longest symbol length test
@ 2025-07-06 20:18 Sergio González Collado
  2025-07-07  9:38 ` Peter Zijlstra
  2025-07-10 19:30 ` Rae Moar
  0 siblings, 2 replies; 4+ messages in thread
From: Sergio González Collado @ 2025-07-06 20:18 UTC (permalink / raw)
  To: David Gow, Rae Moar, linux-kselftest, kunit-dev, Miguel Ojeda,
	Boqun Feng, Arnd Bergmann, Randy Dunlap
  Cc: rust-for-linux, Josh Poimboeuf, Steven Rostedt, Peter Zijlstra,
	Nathan Chancellor, David Laight, Shuah Khan,
	Martin Rodriguez Reboredo, x86, linux-kbuild,
	Sergio González Collado

The kunit test that checks the longests symbol length [1], has triggered
warnings in some pilelines when symbol prefixes are used [2][3]. The test
will to depend on !PREFIX_SYMBOLS and !CFI_CLANG as sujested in [4] and
on !GCOV_KERNEL.

[1] https://lore.kernel.org/rust-for-linux/CABVgOSm=5Q0fM6neBhxSbOUHBgNzmwf2V22vsYC10YRBT=kN1g@mail.gmail.com/T/#t
[2] https://lore.kernel.org/all/20250328112156.2614513-1-arnd@kernel.org/T/#u
[3] https://lore.kernel.org/rust-for-linux/bbd03b37-c4d9-4a92-9be2-75aaf8c19815@infradead.org/T/#t
[4] https://lore.kernel.org/linux-kselftest/20250427200916.GA1661412@ax162/T/#t

Reviewed-by: Rae Moar <rmoar@google.com>
Signed-off-by: Sergio González Collado <sergio.collado@gmail.com>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Tested-by: Randy Dunlap <rdunlap@infradead.org>
---
 lib/Kconfig.debug                | 1 +
 lib/tests/longest_symbol_kunit.c | 3 +--
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index ebe33181b6e6..4a75a52803b6 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -2885,6 +2885,7 @@ config FORTIFY_KUNIT_TEST
 config LONGEST_SYM_KUNIT_TEST
 	tristate "Test the longest symbol possible" if !KUNIT_ALL_TESTS
 	depends on KUNIT && KPROBES
+	depends on !PREFIX_SYMBOLS && !CFI_CLANG && !GCOV_KERNEL
 	default KUNIT_ALL_TESTS
 	help
 	  Tests the longest symbol possible
diff --git a/lib/tests/longest_symbol_kunit.c b/lib/tests/longest_symbol_kunit.c
index e3c28ff1807f..9b4de3050ba7 100644
--- a/lib/tests/longest_symbol_kunit.c
+++ b/lib/tests/longest_symbol_kunit.c
@@ -3,8 +3,7 @@
  * Test the longest symbol length. Execute with:
  *  ./tools/testing/kunit/kunit.py run longest-symbol
  *  --arch=x86_64 --kconfig_add CONFIG_KPROBES=y --kconfig_add CONFIG_MODULES=y
- *  --kconfig_add CONFIG_RETPOLINE=n --kconfig_add CONFIG_CFI_CLANG=n
- *  --kconfig_add CONFIG_MITIGATION_RETPOLINE=n
+ *  --kconfig_add CONFIG_CPU_MITIGATIONS=n --kconfig_add CONFIG_GCOV_KERNEL=n
  */
 
 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt

base-commit: 772b78c2abd85586bb90b23adff89f7303c704c7
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v3 RESEND] kunit: fix longest symbol length test
  2025-07-06 20:18 [PATCH v3 RESEND] kunit: fix longest symbol length test Sergio González Collado
@ 2025-07-07  9:38 ` Peter Zijlstra
  2025-07-07 17:09   ` Sergio González Collado
  2025-07-10 19:30 ` Rae Moar
  1 sibling, 1 reply; 4+ messages in thread
From: Peter Zijlstra @ 2025-07-07  9:38 UTC (permalink / raw)
  To: Sergio González Collado
  Cc: David Gow, Rae Moar, linux-kselftest, kunit-dev, Miguel Ojeda,
	Boqun Feng, Arnd Bergmann, Randy Dunlap, rust-for-linux,
	Josh Poimboeuf, Steven Rostedt, Nathan Chancellor, David Laight,
	Shuah Khan, Martin Rodriguez Reboredo, x86, linux-kbuild

On Sun, Jul 06, 2025 at 10:18:55PM +0200, Sergio González Collado wrote:
> The kunit test that checks the longests symbol length [1], has triggered
> warnings in some pilelines when symbol prefixes are used [2][3]. The test
> will to depend on !PREFIX_SYMBOLS and !CFI_CLANG as sujested in [4] and
> on !GCOV_KERNEL.
> 
> [1] https://lore.kernel.org/rust-for-linux/CABVgOSm=5Q0fM6neBhxSbOUHBgNzmwf2V22vsYC10YRBT=kN1g@mail.gmail.com/T/#t
> [2] https://lore.kernel.org/all/20250328112156.2614513-1-arnd@kernel.org/T/#u
> [3] https://lore.kernel.org/rust-for-linux/bbd03b37-c4d9-4a92-9be2-75aaf8c19815@infradead.org/T/#t
> [4] https://lore.kernel.org/linux-kselftest/20250427200916.GA1661412@ax162/T/#t
> 
> Reviewed-by: Rae Moar <rmoar@google.com>
> Signed-off-by: Sergio González Collado <sergio.collado@gmail.com>
> Acked-by: Randy Dunlap <rdunlap@infradead.org>
> Tested-by: Randy Dunlap <rdunlap@infradead.org>
> ---
>  lib/Kconfig.debug                | 1 +
>  lib/tests/longest_symbol_kunit.c | 3 +--
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index ebe33181b6e6..4a75a52803b6 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -2885,6 +2885,7 @@ config FORTIFY_KUNIT_TEST
>  config LONGEST_SYM_KUNIT_TEST
>  	tristate "Test the longest symbol possible" if !KUNIT_ALL_TESTS
>  	depends on KUNIT && KPROBES
> +	depends on !PREFIX_SYMBOLS && !CFI_CLANG && !GCOV_KERNEL
>  	default KUNIT_ALL_TESTS
>  	help
>  	  Tests the longest symbol possible
> diff --git a/lib/tests/longest_symbol_kunit.c b/lib/tests/longest_symbol_kunit.c
> index e3c28ff1807f..9b4de3050ba7 100644
> --- a/lib/tests/longest_symbol_kunit.c
> +++ b/lib/tests/longest_symbol_kunit.c
> @@ -3,8 +3,7 @@
>   * Test the longest symbol length. Execute with:
>   *  ./tools/testing/kunit/kunit.py run longest-symbol
>   *  --arch=x86_64 --kconfig_add CONFIG_KPROBES=y --kconfig_add CONFIG_MODULES=y
> - *  --kconfig_add CONFIG_RETPOLINE=n --kconfig_add CONFIG_CFI_CLANG=n
> - *  --kconfig_add CONFIG_MITIGATION_RETPOLINE=n
> + *  --kconfig_add CONFIG_CPU_MITIGATIONS=n --kconfig_add CONFIG_GCOV_KERNEL=n
>   */
>  
>  #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> 
> base-commit: 772b78c2abd85586bb90b23adff89f7303c704c7

So this will obviously 'work'. But what I don't understand is the
purpose of this test. Why can't we amend the test itself to use
KSYM_NAME_LEN-8 (or whatever the actual magic value is) and recognise
that we don't have full control over the symbol names; despite using C.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v3 RESEND] kunit: fix longest symbol length test
  2025-07-07  9:38 ` Peter Zijlstra
@ 2025-07-07 17:09   ` Sergio González Collado
  0 siblings, 0 replies; 4+ messages in thread
From: Sergio González Collado @ 2025-07-07 17:09 UTC (permalink / raw)
  To: Peter Zijlstra
  Cc: David Gow, Rae Moar, linux-kselftest, kunit-dev, Miguel Ojeda,
	Boqun Feng, Arnd Bergmann, Randy Dunlap, rust-for-linux,
	Josh Poimboeuf, Steven Rostedt, Nathan Chancellor, David Laight,
	Shuah Khan, Martin Rodriguez Reboredo, x86, linux-kbuild

Hello,

  The initial goal was to verify that a KSYM_NAME_LEN of 512 was
working as expected. It also fixed an issue in
/x86/tools/insn_decoder_test.c.

  This fix is indeed quite trivial, I just implemented the suggested
ideas. Amend the test using KSYM_NAME_LEN-8 doesn't really seem to me
to fix the underlying problem (I also don't know if there is any magic
value).

  Take into account that he actual warnings that have been reported in
the CI ("Please increase KSYM_NAME_LEN both in kernel and kallsyms.c")
 are not from this test, but from
https://elixir.bootlin.com/linux/v6.15/source/scripts/kallsyms.c#L146,
the test has just make that warning evident. Would removing that
comment be a better solution?

  Nevertheless, acknowledging that we don't have full control over the
symbols' names, is also an interesting insight.

  I will be happy to address the issue in one way or another, no problem there.

Regards,
 Sergio

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v3 RESEND] kunit: fix longest symbol length test
  2025-07-06 20:18 [PATCH v3 RESEND] kunit: fix longest symbol length test Sergio González Collado
  2025-07-07  9:38 ` Peter Zijlstra
@ 2025-07-10 19:30 ` Rae Moar
  1 sibling, 0 replies; 4+ messages in thread
From: Rae Moar @ 2025-07-10 19:30 UTC (permalink / raw)
  To: Sergio González Collado
  Cc: David Gow, linux-kselftest, kunit-dev, Miguel Ojeda, Boqun Feng,
	Arnd Bergmann, Randy Dunlap, rust-for-linux, Josh Poimboeuf,
	Steven Rostedt, Peter Zijlstra, Nathan Chancellor, David Laight,
	Shuah Khan, Martin Rodriguez Reboredo, x86, linux-kbuild

On Sun, Jul 6, 2025 at 4:19 PM Sergio González Collado
<sergio.collado@gmail.com> wrote:
>
> The kunit test that checks the longests symbol length [1], has triggered
> warnings in some pilelines when symbol prefixes are used [2][3]. The test
> will to depend on !PREFIX_SYMBOLS and !CFI_CLANG as sujested in [4] and
> on !GCOV_KERNEL.
>
> [1] https://lore.kernel.org/rust-for-linux/CABVgOSm=5Q0fM6neBhxSbOUHBgNzmwf2V22vsYC10YRBT=kN1g@mail.gmail.com/T/#t
> [2] https://lore.kernel.org/all/20250328112156.2614513-1-arnd@kernel.org/T/#u
> [3] https://lore.kernel.org/rust-for-linux/bbd03b37-c4d9-4a92-9be2-75aaf8c19815@infradead.org/T/#t
> [4] https://lore.kernel.org/linux-kselftest/20250427200916.GA1661412@ax162/T/#t
>
> Reviewed-by: Rae Moar <rmoar@google.com>
> Signed-off-by: Sergio González Collado <sergio.collado@gmail.com>
> Acked-by: Randy Dunlap <rdunlap@infradead.org>
> Tested-by: Randy Dunlap <rdunlap@infradead.org>

Hello!

Thanks for resending! I don't believe this has been accepted yet.  So
I've added it to the list of patches to get accepted for the
kselftest/kunit branch.

Thanks!
-Rae

> ---
>  lib/Kconfig.debug                | 1 +
>  lib/tests/longest_symbol_kunit.c | 3 +--
>  2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index ebe33181b6e6..4a75a52803b6 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -2885,6 +2885,7 @@ config FORTIFY_KUNIT_TEST
>  config LONGEST_SYM_KUNIT_TEST
>         tristate "Test the longest symbol possible" if !KUNIT_ALL_TESTS
>         depends on KUNIT && KPROBES
> +       depends on !PREFIX_SYMBOLS && !CFI_CLANG && !GCOV_KERNEL
>         default KUNIT_ALL_TESTS
>         help
>           Tests the longest symbol possible
> diff --git a/lib/tests/longest_symbol_kunit.c b/lib/tests/longest_symbol_kunit.c
> index e3c28ff1807f..9b4de3050ba7 100644
> --- a/lib/tests/longest_symbol_kunit.c
> +++ b/lib/tests/longest_symbol_kunit.c
> @@ -3,8 +3,7 @@
>   * Test the longest symbol length. Execute with:
>   *  ./tools/testing/kunit/kunit.py run longest-symbol
>   *  --arch=x86_64 --kconfig_add CONFIG_KPROBES=y --kconfig_add CONFIG_MODULES=y
> - *  --kconfig_add CONFIG_RETPOLINE=n --kconfig_add CONFIG_CFI_CLANG=n
> - *  --kconfig_add CONFIG_MITIGATION_RETPOLINE=n
> + *  --kconfig_add CONFIG_CPU_MITIGATIONS=n --kconfig_add CONFIG_GCOV_KERNEL=n
>   */
>
>  #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
>
> base-commit: 772b78c2abd85586bb90b23adff89f7303c704c7
> --
> 2.39.2
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-07-10 19:30 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-06 20:18 [PATCH v3 RESEND] kunit: fix longest symbol length test Sergio González Collado
2025-07-07  9:38 ` Peter Zijlstra
2025-07-07 17:09   ` Sergio González Collado
2025-07-10 19:30 ` Rae Moar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).