8a48b308a8
v6.1.9 was built on a GitHub Actions EPYC 7763 runner (AVX-512 capable)
and contained 741 vpbroadcastq EVEX instructions in inlined libstdc++
std::string paths. The resulting binary crashed with SIGILL on every
production node: KVM EPYC (DNS2), Ryzen 5 3600 (SAMI-PC), and any
non-x86_64 node.
cmake/AddCompilerFlags.cmake already set -march=x86-64-v2 -mtune=generic
but GCC 11.4 + libstdc++ inlining still autovectorized some paths to
AVX-512. The fix adds an explicit -mno-avx512f -mno-avx512* block
inside CMAKE_X86_64_BASELINE so the build cannot leak AVX-512 regardless
of the build host's capabilities.
Carries forward the v6.1.9 staking-selfheal fix (f69f087) unchanged.
Bump version 6.1.9 -> 6.2.0 to reflect the build-system change.
See references/avx-512-sigill-build-fix.md for the full diagnosis
recipe and the verification steps.
18 lines
385 B
YAML
18 lines
385 B
YAML
version: "3.8"
|
|
|
|
services:
|
|
trianglesd:
|
|
build: .
|
|
image: cryptographic-triangles/trianglesd:6.2.0
|
|
container_name: trianglesd
|
|
restart: unless-stopped
|
|
ports:
|
|
- "24112:24112"
|
|
- "19112:19112"
|
|
volumes:
|
|
- triangles-data:/home/triangles/.triangles
|
|
command: ["-daemon=0", "-printtoconsole", "-rpcallowip=172.16.0.0/12"]
|
|
|
|
volumes:
|
|
triangles-data:
|