chjj / mako

Bitcoin node written in C

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Crash in OpenBSD RISC-V64 system

antanst opened this issue · comments

Running on a SiFive HiFive Unmatched board.
CPU: rv64imafdc (4) @ 1.196GHz
Memory: 16384MiB
OS: OpenBSD 7.0 riscv64

Mako runs fine and syncs for some time but eventually core dumps:

# ./makod -prune
...
[pool] Received inv message with 21 items: blocks=0 txs=21 (52.79.99.2:8333).
[chain] Block 00000000000000001bdcb9de835d8ab5910ed6b3ddae435b99f3a98abeebee97 (303980) added to chain (txs=388 time=166.21).
[pool] Status: time=2014-06-03T08:25:17Z height=303980 progress=42.04% orphans=0 active=15420 target=0x18692842 peers=8
[pool] Received inv message with 15 items: blocks=0 txs=15 (73.168.103.27:8333).
Abort trap (core dumped)

Tell me how I can help finding out the bug. Core dump file available to send.

Thanks for the report.

A few questions:

  • Is this reproducible? What happens if you boot up the node again?
  • Do you mind copy/pasting a gdb backtrace? gdb ./makod [dumpfile] -ex backtrace
* Is this reproducible? What happens if you boot up the node again?

Yup, it's reproducible and always crashes after a few minutes or hours tops.

* Do you mind copy/pasting a gdb backtrace? `gdb ./makod [dumpfile] -ex backtrace`

OpenBSD in RISCV64 is a pretty new port, they haven't ported lldb yet and gcc or egdb doesn't exist in ports...bummer I know. Hopefully in the next version they'll have a functional debugger so I can provide more useful info.

Also, I've run mako without the -prune flag for a day and it doesn't crash. Running it again with the prune flag results in a crash after a few minutes.

With recent changes the crash doesn't happen, and makod fully syncs with the -prune flag.