Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Caught SIGILL in blst_cgo_init | status=132 #1164

Open
romanornr opened this issue Dec 2, 2024 · 5 comments
Open

Caught SIGILL in blst_cgo_init | status=132 #1164

romanornr opened this issue Dec 2, 2024 · 5 comments

Comments

@romanornr
Copy link
Contributor

Issue Description:
I am experiencing an issue running Blockbook on my OVH VPS.

× blockbook-viacoin.service - Blockbook daemon (Viacoin)
     Loaded: loaded (/lib/systemd/system/blockbook-viacoin.service; disabled; preset: enabled)
     Active: failed (Result: exit-code) since Mon 2024-12-02 00:50:32 UTC; 9s ago
   Duration: 14ms
    Process: 66610 ExecStart=/opt/coins/blockbook/viacoin/bin/blockbook -blockchaincfg=/opt/coins/blockbook/viacoin/config/blockchaincfg.json -datadir=/opt/coins/data/viacoin/blockbook/db -sync -internal=:9055 -public=:91>
   Main PID: 66610 (code=exited, status=132)
        CPU: 13ms

Dec 02 00:50:32 vps-ddb72971 systemd[1]: blockbook-viacoin.service: Scheduled restart job, restart counter is at 5.
Dec 02 00:50:32 vps-ddb72971 systemd[1]: Stopped blockbook-viacoin.service - Blockbook daemon (Viacoin).
Dec 02 00:50:32 vps-ddb72971 systemd[1]: blockbook-viacoin.service: Start request repeated too quickly.
Dec 02 00:50:32 vps-ddb72971 systemd[1]: blockbook-viacoin.service: Failed with result 'exit-code'.
Dec 02 00:50:32 vps-ddb72971 systemd[1]: Failed to start blockbook-viacoin.service - Blockbook daemon (Viacoin).

after running

-blockchaincfg=/opt/coins/blockbook/viacoin/config/blockchaincfg.json \
-datadir=/opt/coins/data/viacoin/blockbook/db \
-sync \
-internal=:9055 \
-public=:91
Caught SIGILL in blst_cgo_init, consult <blst>/bindings/go/README.md.

I did try to remove blockbook repo and do

export CGO_CFLAGS="-DBLST_PORTABLE"
export BLST_FORCE_USE_PORTABLE=1

After that I git cloned blockbook again and ran

make all-viacoin
cd build
sudo apt install ./blockbook-viacoin_0.4.0_amd64.deb ./backend-viacoin_0.16.3-satoshilabs-1_amd64.deb -y

But again after running

root@vps-ddb72971:~/blockbook# /opt/coins/blockbook/viacoin/bin/blockbook \
-blockchaincfg=/opt/coins/blockbook/viacoin/config/blockchaincfg.json \
-datadir=/opt/coins/data/viacoin/blockbook/db \
-sync \
-internal=:9055 \
-public=:91

I still receive: Caught SIGILL in blst_cgo_init, consult /bindings/go/README.md.

Maybe there's a workaround, or will this VPS with CPU limitations (I think it is) be sort of useless?

Environment Details:

  • Architecture: x86_64
  • CPU op-mode(s): 32-bit, 64-bit
  • Address sizes: 40 bits physical, 48 bits virtual
  • Byte Order: Little Endian
  • CPU(s): 8
  • On-line CPU(s) list: 0-7
  • Vendor ID: GenuineIntel
  • Model name: Intel Core Processor (Haswell, no TSX)
  • BIOS Model name: pc-i440fx-8.2 CPU @ 2.0GHz
  • CPU family: 6
  • Model: 60
  • Thread(s) per core: 1
  • Core(s) per socket: 1
  • Socket(s): 8
  • Stepping: 1
  • BogoMIPS: 4799.99
  • Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx rdtscp lm constant_tsc rep_good nopl xtopology cpuid tsc_known_freq pni pclmulqdq vmx sse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm cpuid_fault invpcid_single pti tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase bmi1 avx2 smep bmi2 erms invpcid xsaveopt arat md_clear

Virtualization features:

  • Virtualization: VT-x
  • Hypervisor vendor: KVM
  • Virtualization type: full

Caches:

  • L1d: 256 KiB (8 instances)
  • L1i: 256 KiB (8 instances)
  • L2: 32 MiB (8 instances)
  • L3: 128 MiB (8 instances)

NUMA:

  • NUMA node(s): 1
  • NUMA node0 CPU(s): 0-7

Vulnerabilities:

  • Gather data sampling: Not affected
  • Itlb multihit: KVM: Mitigation: VMX disabled
  • L1tf: Mitigation; PTE Inversion; VMX conditional cache flushes, SMT disabled
  • Mds: Mitigation; Clear CPU buffers; SMT Host state unknown
  • Meltdown: Mitigation; PTI
  • Mmio stale data: Unknown: No mitigations
  • Reg file data sampling: Not affected
  • Retbleed: Not affected
  • Spec rstack overflow: Not affected
  • Spec store bypass: Vulnerable
  • Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization
  • Spectre v2: Mitigation; Retpolines; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Retpoline
  • Srbds: Unknown: Dependent on hypervisor status
  • Tsx async abort: Not affected

Any help in resolving this issue or explaining it more would be nice

@martin-key
Copy link
Contributor

Same here

@martin-key
Copy link
Contributor

The problem first appears sometime after that commit: a5bbb7d

@martinboehm
Copy link
Contributor

Hi, we do not observe this problem in our environment. However, it looks like some issue with geth (which is included in Blockbook to provide client connectivity). Maybe something in this https://github.com/orgs/community/discussions/43153 discussion may help.

@martin-key
Copy link
Contributor

I will check what is written in that issue. Thanks @martinboehm!
Just FYI my setup:

  • Docker environment (latest version) and everything is ran in containers.
  • Debian 12
  • There was information that all of this depends on AVX and the issue is because the processor doesn't support AVX - out processor supports AVX and that is passed to the docker runtime.
  • 56 CPU cores
  • 256 GB RAM

@vdovhanych
Copy link
Member

You could try building the project to be portable, which will remove any system-specific instructions there could be. But you will reduce your performance since it won't utilize any of them.

We also suggest building the project on the same system you'll run it on again so it can utilize whatever instructions are present during the build and also after in the runtime.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants