diff mbox series

kunit: fixes Compilation error on s390

Message ID 20250329150320.331018-1-acarmina@redhat.com (mailing list archive)
State New
Delegated to: Brendan Higgins
Headers show
Series kunit: fixes Compilation error on s390 | expand

Commit Message

Alessandro Carminati March 29, 2025, 3:03 p.m. UTC
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(+)

Comments

Stephen Rothwell March 29, 2025, 10:09 p.m. UTC | #1
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.
David Gow March 30, 2025, 5:12 a.m. UTC | #2
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
>
Heiko Carstens March 31, 2025, 9:33 a.m. UTC | #3
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>
diff mbox series

Patch

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