rust-for-linux.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] kunit: fix longest symbol length test
@ 2025-05-02 14:37 Sergio González Collado
  2025-05-09 19:09 ` Rae Moar
  2025-05-13  5:36 ` Randy Dunlap
  0 siblings, 2 replies; 3+ messages in thread
From: Sergio González Collado @ 2025-05-02 14:37 UTC (permalink / raw)
  To: David Gow, Rae Moar, linux-kselftest, kunit-dev, Miguel Ojeda,
	Boqun Feng, Arnd Bergmann
  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]. The test
is adjunsted to depend on !PREFIX_SYMBOLS and !CFI_CLANG as sujested in [3]

[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/linux-kselftest/20250427200916.GA1661412@ax162/T/#t

Signed-off-by: Sergio González Collado <sergio.collado@gmail.com>
---
V1 -> V2: added dependency on !CFI_CLANG as suggested in [3], removed
	CONFIG_ prefix
---
 lib/Kconfig.debug                | 2 +-
 lib/tests/longest_symbol_kunit.c | 3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index f9051ab610d5..5b33673d82da 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -2885,7 +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 KUNIT && KPROBES && !PREFIX_SYMBOLS && !CFI_CLANG
 	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..b183fb92d1b2 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
  */
 
 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt

base-commit: ebd297a2affadb6f6f4d2e5d975c1eda18ac762d
-- 
2.39.2


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

* Re: [PATCH v2] kunit: fix longest symbol length test
  2025-05-02 14:37 [PATCH v2] kunit: fix longest symbol length test Sergio González Collado
@ 2025-05-09 19:09 ` Rae Moar
  2025-05-13  5:36 ` Randy Dunlap
  1 sibling, 0 replies; 3+ messages in thread
From: Rae Moar @ 2025-05-09 19:09 UTC (permalink / raw)
  To: Sergio González Collado
  Cc: David Gow, linux-kselftest, kunit-dev, Miguel Ojeda, Boqun Feng,
	Arnd Bergmann, rust-for-linux, Josh Poimboeuf, Steven Rostedt,
	Peter Zijlstra, Nathan Chancellor, David Laight, Shuah Khan,
	Martin Rodriguez Reboredo, x86, linux-kbuild

On Fri, May 2, 2025 at 10:38 AM 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]. The test
> is adjunsted to depend on !PREFIX_SYMBOLS and !CFI_CLANG as sujested in [3]
>
> [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/linux-kselftest/20250427200916.GA1661412@ax162/T/#t
>
> Signed-off-by: Sergio González Collado <sergio.collado@gmail.com>

Hello!

This is working for me both when the test is built-in (run using
kunit.py) and when it is loaded as a module. Those that had issues
with this breaking with prefix symbols, feel free to dispute this if
you are still having issues. However, otherwise I am happy to see this
go through the KUnit tree.

Reviewed-by: Rae Moar <rmoar@google.com>

Thanks!
-Rae

>
> ---
> V1 -> V2: added dependency on !CFI_CLANG as suggested in [3], removed
>         CONFIG_ prefix
> ---
>  lib/Kconfig.debug                | 2 +-
>  lib/tests/longest_symbol_kunit.c | 3 +--
>  2 files changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index f9051ab610d5..5b33673d82da 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -2885,7 +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 KUNIT && KPROBES && !PREFIX_SYMBOLS && !CFI_CLANG
>         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..b183fb92d1b2 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
>   */
>
>  #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
>
> base-commit: ebd297a2affadb6f6f4d2e5d975c1eda18ac762d
> --
> 2.39.2
>

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

* Re: [PATCH v2] kunit: fix longest symbol length test
  2025-05-02 14:37 [PATCH v2] kunit: fix longest symbol length test Sergio González Collado
  2025-05-09 19:09 ` Rae Moar
@ 2025-05-13  5:36 ` Randy Dunlap
  1 sibling, 0 replies; 3+ messages in thread
From: Randy Dunlap @ 2025-05-13  5:36 UTC (permalink / raw)
  To: Sergio González Collado, David Gow, Rae Moar,
	linux-kselftest, kunit-dev, Miguel Ojeda, Boqun Feng,
	Arnd Bergmann
  Cc: rust-for-linux, Josh Poimboeuf, Steven Rostedt, Peter Zijlstra,
	Nathan Chancellor, David Laight, Shuah Khan,
	Martin Rodriguez Reboredo, x86, linux-kbuild

[-- Attachment #1: Type: text/plain, Size: 4817 bytes --]

Hi,

On 5/2/25 7:37 AM, 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]. The test
> is adjunsted to depend on !PREFIX_SYMBOLS and !CFI_CLANG as sujested in [3]
> 
> [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/linux-kselftest/20250427200916.GA1661412@ax162/T/#t
> 
> Signed-off-by: Sergio González Collado <sergio.collado@gmail.com>
> ---
> V1 -> V2: added dependency on !CFI_CLANG as suggested in [3], removed
> 	CONFIG_ prefix

I applied this patch and tested a previously failing case. It still fails.
This is on an i386 build:

Symbol __gcov_.snnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7n too long for kallsyms (519 >= 512).
Please increase KSYM_NAME_LEN both in kernel and kallsyms.c
Symbol __gcov0.snnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7n too long for kallsyms (519 >= 512).
Please increase KSYM_NAME_LEN both in kernel and kallsyms.c
Symbol __gcov_.snnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7n too long for kallsyms (519 >= 512).
Please increase KSYM_NAME_LEN both in kernel and kallsyms.c
Symbol __gcov0.snnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7n too long for kallsyms (519 >= 512).
Please increase KSYM_NAME_LEN both in kernel and kallsyms.c

> gcc --version
gcc (SUSE Linux) 14.2.1 20250430 [revision 3418d740b344e0ba38022f3bed90540ec3de35dd]

The failing i386 randconfig file is attached.

> ---
>  lib/Kconfig.debug                | 2 +-
>  lib/tests/longest_symbol_kunit.c | 3 +--
>  2 files changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index f9051ab610d5..5b33673d82da 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -2885,7 +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 KUNIT && KPROBES && !PREFIX_SYMBOLS && !CFI_CLANG
>  	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..b183fb92d1b2 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
>   */
>  
>  #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> 
> base-commit: ebd297a2affadb6f6f4d2e5d975c1eda18ac762d

-- 
~Randy

[-- Attachment #2: config-r9116.gz --]
[-- Type: application/gzip, Size: 36567 bytes --]

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

end of thread, other threads:[~2025-05-13  5:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-02 14:37 [PATCH v2] kunit: fix longest symbol length test Sergio González Collado
2025-05-09 19:09 ` Rae Moar
2025-05-13  5:36 ` Randy Dunlap

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).