[PATCH] kunit: fixes Compilation error on s390

Alessandro Carminati posted 1 patch 8 months, 3 weeks ago
lib/kunit/Kconfig | 1 +
1 file changed, 1 insertion(+)
[PATCH] kunit: fixes Compilation error on s390
Posted by Alessandro Carminati 8 months, 3 weeks ago
The current implementation of suppressing warning backtraces uses __func__,
which is a compile-time constant only for non -fPIC compilation.
GCC's support for this situation in position-independent code varies across
versions and architectures.

On the s390 architecture, -fPIC is required for compilation, and support
for this scenario is available in GCC 11 and later.

Fixes:  d8b14a2 ("bug/kunit: core support for suppressing warning backtraces")

Signed-off-by: Alessandro Carminati <acarmina@redhat.com>
---
 lib/kunit/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/kunit/Kconfig b/lib/kunit/Kconfig
index 201402f0ab49..6c937144dcea 100644
--- a/lib/kunit/Kconfig
+++ b/lib/kunit/Kconfig
@@ -17,6 +17,7 @@ if KUNIT
 
 config KUNIT_SUPPRESS_BACKTRACE
 	bool "KUnit - Enable backtrace suppression"
+	depends on (!S390 && CC_IS_GCC) || (CC_IS_GCC && GCC_VERSION >= 110000)
 	default y
 	help
 	  Enable backtrace suppression for KUnit. If enabled, backtraces
-- 
2.34.1
Re: [PATCH] kunit: fixes Compilation error on s390
Posted by Heiko Carstens 8 months, 3 weeks ago
On Sat, Mar 29, 2025 at 03:03:20PM +0000, Alessandro Carminati wrote:
> The current implementation of suppressing warning backtraces uses __func__,
> which is a compile-time constant only for non -fPIC compilation.
> GCC's support for this situation in position-independent code varies across
> versions and architectures.
> 
> On the s390 architecture, -fPIC is required for compilation, and support
> for this scenario is available in GCC 11 and later.
> 
> Fixes:  d8b14a2 ("bug/kunit: core support for suppressing warning backtraces")
> 
> Signed-off-by: Alessandro Carminati <acarmina@redhat.com>
> ---
>  lib/kunit/Kconfig | 1 +
>  1 file changed, 1 insertion(+)

Acked-by: Heiko Carstens <hca@linux.ibm.com>
Re: [PATCH] kunit: fixes Compilation error on s390
Posted by David Gow 8 months, 3 weeks ago
On Sat, 29 Mar 2025 at 23:04, Alessandro Carminati <acarmina@redhat.com> wrote:
>
> The current implementation of suppressing warning backtraces uses __func__,
> which is a compile-time constant only for non -fPIC compilation.
> GCC's support for this situation in position-independent code varies across
> versions and architectures.
>
> On the s390 architecture, -fPIC is required for compilation, and support
> for this scenario is available in GCC 11 and later.
>
> Fixes:  d8b14a2 ("bug/kunit: core support for suppressing warning backtraces")
>
> Signed-off-by: Alessandro Carminati <acarmina@redhat.com>
> ---

Makes sense and seems to work here. Thanks!

Acked-by: David Gow <davidgow@google.com>

Cheers,
-- David


>  lib/kunit/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/lib/kunit/Kconfig b/lib/kunit/Kconfig
> index 201402f0ab49..6c937144dcea 100644
> --- a/lib/kunit/Kconfig
> +++ b/lib/kunit/Kconfig
> @@ -17,6 +17,7 @@ if KUNIT
>
>  config KUNIT_SUPPRESS_BACKTRACE
>         bool "KUnit - Enable backtrace suppression"
> +       depends on (!S390 && CC_IS_GCC) || (CC_IS_GCC && GCC_VERSION >= 110000)
>         default y
>         help
>           Enable backtrace suppression for KUnit. If enabled, backtraces
> --
> 2.34.1
>
Re: [PATCH] kunit: fixes Compilation error on s390
Posted by Stephen Rothwell 8 months, 3 weeks ago
Hi Alessandro,

On Sat, 29 Mar 2025 15:03:20 +0000 Alessandro Carminati <acarmina@redhat.com> wrote:
>
> The current implementation of suppressing warning backtraces uses __func__,
> which is a compile-time constant only for non -fPIC compilation.
> GCC's support for this situation in position-independent code varies across
> versions and architectures.
> 
> On the s390 architecture, -fPIC is required for compilation, and support
> for this scenario is available in GCC 11 and later.
> 
> Fixes:  d8b14a2 ("bug/kunit: core support for suppressing warning backtraces")
> 
> Signed-off-by: Alessandro Carminati <acarmina@redhat.com>

Please keep all the commit message tags together at the end of the
commit message.

-- 
Cheers,
Stephen Rothwell