Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 917312 - app-benchmarks/stress-ng-0.17.01 - /usr/lib/gcc/x86_64-pc-linux-gnu/13/include/avx512fintrin.h:6532:1: error: inlining failed in call to 'always_inline' '_mm512_storeu_si512': target specific option mismatch
Summary: app-benchmarks/stress-ng-0.17.01 - /usr/lib/gcc/x86_64-pc-linux-gnu/13/includ...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Conrad Kostecki
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-11-13 20:46 UTC by ernsteiswuerfel
Modified: 2024-01-05 13:23 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (stress-ng-0.17.01-20231113-202524.log,126.40 KB, text/plain)
2023-11-13 20:46 UTC, ernsteiswuerfel
Details
emerge --info (file_917312.txt,6.82 KB, text/plain)
2023-11-13 20:47 UTC, ernsteiswuerfel
Details
build.log (0.17.03-r1) (stress-ng-0.17.03-r120240103-220810.log,113.52 KB, text/plain)
2024-01-03 22:25 UTC, ernsteiswuerfel
Details

Note You need to log in before you can comment on or make changes to this bug.
Description ernsteiswuerfel archtester 2023-11-13 20:46:30 UTC
Created attachment 874711 [details]
build.log

Builds fine on musl/clang but fails on my glibc(-2.38-r7) partition:

[...]
x86_64-pc-linux-gnu-gcc -Os -march=x86-64-v2 -pipe -Wall -Wextra -DVERSION='"0.17.01"' -std=gnu99 -fstack-protector-strong -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -ftree-loop-vectorize -fsplit-loops -c -o stress-vma.o stress-vma.c
CC stress-vnni.c
x86_64-pc-linux-gnu-gcc -Os -march=x86-64-v2 -pipe -Wall -Wextra -DVERSION='"0.17.01"' -std=gnu99 -fstack-protector-strong -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -ftree-loop-vectorize -fsplit-loops -c -o stress-vnni.o stress-vnni.c
stress-vnni.c: In function 'stress_vnni_vpdpwssd256':
stress-vnni.c:324:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
  324 |                 a = _mm256_loadu_si256((void *)&a_init[i]);
      |                 ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stress-vnni.c: In function 'stress_vnni_vpdpwssd512':
stress-vnni.c:299:19: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
  299 |                 a = _mm512_loadu_si512((void *)&a_init[i]);
      |                 ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/13/include/immintrin.h:53,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/13/include/x86intrin.h:32,
                 from core-builtin.h:23,
                 from stress-vnni.c:22:
/usr/lib/gcc/x86_64-pc-linux-gnu/13/include/avx512fintrin.h: In function 'stress_vnni_vpaddb512':
/usr/lib/gcc/x86_64-pc-linux-gnu/13/include/avx512fintrin.h:6532:1: error: inlining failed in call to 'always_inline' '_mm512_storeu_si512': target specific option mismatch
 6532 | _mm512_storeu_si512 (void *__P, __m512i __A)
      | ^~~~~~~~~~~~~~~~~~~
stress-vnni.c:126:17: note: called from here
  126 |                 _mm512_storeu_si512((void *)&result[i], r);
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/13/include/immintrin.h:63:
/usr/lib/gcc/x86_64-pc-linux-gnu/13/include/avx512bwintrin.h:956:1: error: inlining failed in call to 'always_inline' '_mm512_add_epi8': target specific option mismatch
  956 | _mm512_add_epi8 (__m512i __A, __m512i __B)
      | ^~~~~~~~~~~~~~~
stress-vnni.c:125:21: note: called from here
  125 |                 r = _mm512_add_epi8(a, b);
      |                     ^~~~~~~~~~~~~~~~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/13/include/avx512fintrin.h:6499:1: error: inlining failed in call to 'always_inline' '_mm512_loadu_si512': target specific option mismatch
 6499 | _mm512_loadu_si512 (void const *__P)
      | ^~~~~~~~~~~~~~~~~~
stress-vnni.c:124:21: note: called from here
  124 |                 b = _mm512_loadu_si512((void *)&b_init[i]);
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/13/include/avx512fintrin.h:6499:1: error: inlining failed in call to 'always_inline' '_mm512_loadu_si512': target specific option mismatch
 6499 | _mm512_loadu_si512 (void const *__P)
      | ^~~~~~~~~~~~~~~~~~
stress-vnni.c:123:21: note: called from here
  123 |                 a = _mm512_loadu_si512((void *)&a_init[i]);
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make: *** [Makefile:626: stress-vnni.o] Error 1
 * ERROR: app-benchmarks/stress-ng-0.17.01::gentoo failed (compile phase):
 *   emake failed
Comment 1 ernsteiswuerfel archtester 2023-11-13 20:47:17 UTC
Created attachment 874712 [details]
emerge --info
Comment 2 Kostadin Shishmanov 2023-11-13 21:41:59 UTC
Apparently the exact same issue was happening, but on musl. I think the "fix" mentioned below somehow reversed something.

https://github.com/ColinIanKing/stress-ng/commit/cd84c46ce780242879e8aaa7d698b9cd87996dbd
https://github.com/openwrt/packages/issues/22373
https://github.com/ColinIanKing/stress-ng/issues/325
Comment 3 Conrad Kostecki gentoo-dev 2024-01-02 19:11:16 UTC
Yep, should be fixed with current version in tree. Feel free to open, if not.
Comment 4 ernsteiswuerfel archtester 2024-01-03 22:25:44 UTC
Created attachment 881431 [details]
build.log (0.17.03-r1)

Apparently not fixed on glibc systems.
Comment 5 Conrad Kostecki gentoo-dev 2024-01-05 13:19:31 UTC
Whoops, sorry, I haven't right looked. It fixed with 0.17.04 (not .03). It was just released and seems to fix it now :-)
Comment 6 Larry the Git Cow gentoo-dev 2024-01-05 13:23:49 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=031444a0bb9b97bfd391884d8528e39501b2bec2

commit 031444a0bb9b97bfd391884d8528e39501b2bec2
Author:     Conrad Kostecki <conikost@gentoo.org>
AuthorDate: 2024-01-05 13:23:01 +0000
Commit:     Conrad Kostecki <conikost@gentoo.org>
CommitDate: 2024-01-05 13:23:42 +0000

    app-benchmarks/stress-ng: drop 0.17.03-r1
    
    Closes: https://bugs.gentoo.org/917312
    Signed-off-by: Conrad Kostecki <conikost@gentoo.org>

 app-benchmarks/stress-ng/Manifest                  |  1 -
 .../stress-ng/stress-ng-0.17.03-r1.ebuild          | 58 ----------------------
 2 files changed, 59 deletions(-)

Additionally, it has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d413ea431c46f02669c2f51aafb046dfb0d719ed

commit d413ea431c46f02669c2f51aafb046dfb0d719ed
Author:     Conrad Kostecki <conikost@gentoo.org>
AuthorDate: 2024-01-05 13:22:32 +0000
Commit:     Conrad Kostecki <conikost@gentoo.org>
CommitDate: 2024-01-05 13:23:42 +0000

    app-benchmarks/stress-ng: add 0.17.04
    
    Bug: https://bugs.gentoo.org/917312
    Signed-off-by: Conrad Kostecki <conikost@gentoo.org>

 app-benchmarks/stress-ng/Manifest                 |  1 +
 app-benchmarks/stress-ng/stress-ng-0.17.04.ebuild | 58 +++++++++++++++++++++++
 2 files changed, 59 insertions(+)