CortexFoundation / CortexTheseus

Cortex - AI on Blockchain, Official Golang implementation
https://www.cortexlabs.ai
GNU Lesser General Public License v3.0
126 stars 48 forks source link

Compile warnings and Node crashing #940

Closed effofxprime closed 3 years ago

effofxprime commented 3 years ago

When I compiled Cortex Theseus, I received the following warnings. Are they an issue? I am having an issue with starting a full node.

-- The C compiler identification is GNU 9.3.0 -- The CXX compiler identification is GNU 9.3.0 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- ENABLE CPU -- Configuring done -- Generating done -- Build files have been written to: /home/effofx/CortexTheseus/cvm-runtime/build make[2]: Entering directory '/home/effofx/CortexTheseus/cvm-runtime/build' make[3]: Entering directory '/home/effofx/CortexTheseus/cvm-runtime/build' make[4]: Entering directory '/home/effofx/CortexTheseus/cvm-runtime/build' make[4]: Entering directory '/home/effofx/CortexTheseus/cvm-runtime/build' Scanning dependencies of target cvm Scanning dependencies of target cvm_runtime make[4]: Leaving directory '/home/effofx/CortexTheseus/cvm-runtime/build' make[4]: Leaving directory '/home/effofx/CortexTheseus/cvm-runtime/build' make[4]: Entering directory '/home/effofx/CortexTheseus/cvm-runtime/build' make[4]: Entering directory '/home/effofx/CortexTheseus/cvm-runtime/build' [ 1%] Building CXX object CMakeFiles/cvm_runtime.dir/src/core/c_api.cc.o [ 2%] Building CXX object CMakeFiles/cvm_runtime.dir/src/core/c_symbol_api.cc.o [ 4%] Building CXX object CMakeFiles/cvm.dir/src/compiler/graph_compile.cc.o [ 5%] Building CXX object CMakeFiles/cvm.dir/src/pass/correct_layout.cc.o [ 6%] Building CXX object CMakeFiles/cvm_runtime.dir/src/core/c_api_graph.cc.o [ 8%] Building CXX object CMakeFiles/cvm.dir/src/pass/infer_precision.cc.o [ 10%] Building CXX object CMakeFiles/cvm.dir/src/pass/infer_shape_type.cc.o [ 9%] Building CXX object CMakeFiles/cvm_runtime.dir/src/core/errors.cc.o ld -r -o cpuminer.o cpuminer.o.temp.o ar cr libcpuminer.a cpuminer.o blake2b.o siphash.o cuckoo.o make[1]: Leaving directory '/home/effofx/CortexTheseus/solution' [ 12%] Building CXX object CMakeFiles/cvm_runtime.dir/src/core/graph.cc.o [ 13%] Building CXX object CMakeFiles/cvm_runtime.dir/src/core/model.cc.o [ 14%] Building CXX object CMakeFiles/cvm_runtime.dir/src/core/module.cc.o [ 16%] Building CXX object CMakeFiles/cvm.dir/src/pass/order_mutation.cc.o [ 17%] Building CXX object CMakeFiles/cvm_runtime.dir/src/core/pass.cc.o [ 18%] Building CXX object CMakeFiles/cvm.dir/src/pass/place_device.cc.o [ 20%] Building CXX object CMakeFiles/cvm.dir/src/pass/plan_memory.cc.o [ 21%] Building CXX object CMakeFiles/cvm_runtime.dir/src/core/symbolic.cc.o [ 22%] Building CXX object CMakeFiles/cvm_runtime.dir/src/runtime/device_api.cc.o [ 24%] Building CXX object CMakeFiles/cvm_runtime.dir/src/runtime/c_runtime_api.cc.o [ 25%] Building CXX object CMakeFiles/cvm.dir/src/pass/print_graph_ir.cc.o [ 26%] Building CXX object CMakeFiles/cvm_runtime.dir/src/runtime/graph_runtime.cc.o [ 28%] Building CXX object CMakeFiles/cvm_runtime.dir/src/runtime/infer_attr.cc.o [ 29%] Building CXX object CMakeFiles/cvm.dir/src/pass/saveload_json.cc.o [ 30%] Building CXX object CMakeFiles/cvm_runtime.dir/src/runtime/ndarray.cc.o [ 32%] Building CXX object CMakeFiles/cvm.dir/src/core/c_api.cc.o [ 33%] Building CXX object CMakeFiles/cvm.dir/src/core/c_api_graph.cc.o [ 34%] Building CXX object CMakeFiles/cvm.dir/src/core/c_symbol_api.cc.o [ 36%] Building CXX object CMakeFiles/cvm_runtime.dir/src/runtime/registry.cc.o [ 37%] Building CXX object CMakeFiles/cvm.dir/src/core/errors.cc.o [ 38%] Building CXX object CMakeFiles/cvm.dir/src/core/graph.cc.o /home/effofx/CortexTheseus/cvm-runtime/src/runtime/infer_attr.cc: In member function ‘int64_t cvm::runtime::CvmRuntime::GetOps()’: /home/effofx/CortexTheseus/cvm-runtime/src/runtime/infer_attr.cc:116:51: warning: ‘((void)& shape +8)’ may be used uninitialized in this function [-Wmaybe-uninitialized] 116 | base_ops = static_cast(shape[0]) 20; | ~~~~~~~^~~~ /home/effofx/CortexTheseus/cvm-runtime/src/runtime/infer_attr.cc:112:56: warning: ‘((void)& weight_shp +16)’ may be used uninitialized in this function [-Wmaybe-uninitialized] 112 | base_ops = static_cast(weight_shp[1]) 3; // MAX (1<<24) 3 < 1G | ~~~~~~~~^~~ [ 40%] Building CXX object CMakeFiles/cvm_runtime.dir/src/runtime/cpu/devapi/cpu_device_api.cc.o [ 41%] Building CXX object CMakeFiles/cvm.dir/src/core/model.cc.o [ 42%] Building CXX object CMakeFiles/cvm_runtime.dir/src/runtime/cpu/ops/broadcast.cc.o [ 44%] Building CXX object CMakeFiles/cvm_runtime.dir/src/runtime/cpu/ops/elemwise.cc.o [ 45%] Building CXX object CMakeFiles/cvm.dir/src/core/module.cc.o [ 46%] Building CXX object CMakeFiles/cvm_runtime.dir/src/runtime/cpu/ops/nms.cc.o [ 48%] Building CXX object CMakeFiles/cvm.dir/src/core/pass.cc.o [ 49%] Building CXX object CMakeFiles/cvm_runtime.dir/src/runtime/cpu/ops/ops.cc.o [ 50%] Building CXX object CMakeFiles/cvm.dir/src/core/symbolic.cc.o [ 52%] Building CXX object CMakeFiles/cvm.dir/src/runtime/c_runtime_api.cc.o [ 53%] Building CXX object CMakeFiles/cvm_runtime.dir/src/runtime/cpu/ops/reduce.cc.o [ 54%] Building CXX object CMakeFiles/cvm_runtime.dir/src/top/node.cc.o [ 56%] Building CXX object CMakeFiles/cvm.dir/src/runtime/device_api.cc.o [ 57%] Building CXX object CMakeFiles/cvm_runtime.dir/src/top/op.cc.o [ 58%] Building CXX object CMakeFiles/cvm.dir/src/runtime/graph_runtime.cc.o [ 60%] Building CXX object CMakeFiles/cvm_runtime.dir/src/top/nn/convolution.cc.o [ 61%] Building CXX object CMakeFiles/cvm.dir/src/runtime/infer_attr.cc.o [ 62%] Building CXX object CMakeFiles/cvm.dir/src/runtime/ndarray.cc.o [ 64%] Building CXX object CMakeFiles/cvm.dir/src/runtime/registry.cc.o [ 65%] Building CXX object CMakeFiles/cvm_runtime.dir/src/top/nn/nms.cc.o [ 66%] Building CXX object CMakeFiles/cvm_runtime.dir/src/top/nn/nn.cc.o [ 68%] Building CXX object CMakeFiles/cvm.dir/src/runtime/cpu/devapi/cpu_device_api.cc.o [ 69%] Building CXX object CMakeFiles/cvm.dir/src/runtime/cpu/ops/broadcast.cc.o [ 70%] Building CXX object CMakeFiles/cvm.dir/src/runtime/cpu/ops/elemwise.cc.o [ 72%] Building CXX object CMakeFiles/cvm.dir/src/runtime/cpu/ops/nms.cc.o /home/effofx/CortexTheseus/cvm-runtime/src/runtime/infer_attr.cc: In member function ‘int64_t cvm::runtime::CvmRuntime::GetOps()’: /home/effofx/CortexTheseus/cvm-runtime/src/runtime/infer_attr.cc:116:51: warning: ‘((void)& shape +8)’ may be used uninitialized in this function [-Wmaybe-uninitialized] 116 | base_ops = static_cast(shape[0]) 20; | ~~~~~~~^~~~ /home/effofx/CortexTheseus/cvm-runtime/src/runtime/infer_attr.cc:112:56: warning: ‘((void)& weight_shp +16)’ may be used uninitialized in this function [-Wmaybe-uninitialized] 112 | base_ops = static_cast(weight_shp[1]) 3; // MAX (1<<24) 3 < 1G | ~~~~~~~~^~~ [ 73%] Building CXX object CMakeFiles/cvm.dir/src/runtime/cpu/ops/ops.cc.o [ 74%] Building CXX object CMakeFiles/cvm.dir/src/runtime/cpu/ops/reduce.cc.o [ 76%] Building CXX object CMakeFiles/cvm.dir/src/top/node.cc.o [ 77%] Building CXX object CMakeFiles/cvm_runtime.dir/src/top/nn/pooling.cc.o [ 78%] Building CXX object CMakeFiles/cvm_runtime.dir/src/top/nn/upsampling.cc.o [ 80%] Building CXX object CMakeFiles/cvm.dir/src/top/op.cc.o [ 81%] Building CXX object CMakeFiles/cvm.dir/src/top/nn/convolution.cc.o [ 82%] Building CXX object CMakeFiles/cvm.dir/src/top/nn/nms.cc.o [ 84%] Building CXX object CMakeFiles/cvm_runtime.dir/src/top/tensor/broadcast.cc.o [ 85%] Building CXX object CMakeFiles/cvm.dir/src/top/nn/nn.cc.o [ 86%] Building CXX object CMakeFiles/cvm.dir/src/top/nn/pooling.cc.o [ 88%] Building CXX object CMakeFiles/cvm.dir/src/top/nn/upsampling.cc.o [ 89%] Building CXX object CMakeFiles/cvm_runtime.dir/src/top/tensor/elemwise.cc.o [ 90%] Building CXX object CMakeFiles/cvm_runtime.dir/src/top/tensor/reduce.cc.o [ 92%] Building CXX object CMakeFiles/cvm_runtime.dir/src/top/tensor/transform.cc.o [ 93%] Building CXX object CMakeFiles/cvm.dir/src/top/tensor/broadcast.cc.o [ 94%] Building CXX object CMakeFiles/cvm.dir/src/top/tensor/elemwise.cc.o [ 96%] Building CXX object CMakeFiles/cvm.dir/src/top/tensor/reduce.cc.o [ 97%] Building CXX object CMakeFiles/cvm.dir/src/top/tensor/transform.cc.o [ 98%] Linking CXX shared library libcvm_runtime.so make[4]: Leaving directory '/home/effofx/CortexTheseus/cvm-runtime/build' [ 98%] Built target cvm_runtime [100%] Linking CXX shared library libcvm.so make[4]: Leaving directory '/home/effofx/CortexTheseus/cvm-runtime/build' [100%] Built target cvm

My cortex start script:

!/bin/bash

cd /home/effofx/CortexTheseus export LD_LIBRARY_PATH=/usr/local/cuda/lib64/:/usr/local/cuda/lib64/stubs:$LD_LIBRARY_PATH export LIBRARY_PATH=/usr/local/cuda/lib64/:/usr/local/cuda/lib64/stubs:$LIBRARY_PATH export LD_LIBRARY_PATH=$PWD:$PWD/plugins:$LD_LIBRARY_PATH ./build/bin/cortex --verbosity 4

Crashing of the node. **I didn't include everything from the error, it was well over 200000 lines and I've assumed that I have included the relevant info. I apologize if you need the whole output. Where would it output this information to a file?

DEBUG[05-01|00:09:39.650] Nas send items status=0 version=2 DEBUG[05-01|00:09:39.650] Nas send items OK status=0 version=2 len=0 DEBUG[05-01|00:09:39.664] Fetching batch of headers id=b15c2f3070676ac8 conn=dyndial count=192 fromnum=385 skip=0 reverse=false DEBUG[05-01|00:09:39.667] Fetching batch of block bodies id=a37fdeb2f4d192d3 conn=dyndial count=2 INFO [05-01|00:09:39.672] Downloader queue stats receiptTasks=0 blockTasks=42 itemSize=755.58B throttle=8192 DEBUG[05-01|00:09:39.684] Inserting downloaded chain items=77 firstnum=1 firsthash="dfd8af…43a23d" lastnum=77 lasthash="c45adf…681cc9" DEBUG[05-01|00:09:39.672] Fetching batch of block bodies id=b15c2f3070676ac8 conn=dyndial count=2 SIGILL: illegal instruction PC=0x1856a8e m=9 sigcode=2 instruction bytes: 0xc5 0xfa 0x6f 0x7 0xc5 0xfa 0x6f 0x4f 0x10 0x64 0x48 0x8b 0x4 0x25 0x28 0x0

goroutine 0 [idle]: runtime: unknown pc 0x1856a8e stack: frame={sp:0x7f04c5ffadb0, fp:0x0} stack=[0x7f04c57fb288,0x7f04c5ffae88) 00007f04c5ffacb0: 0000000300070f31 0000000000000000 00007f04c5ffacc0: 00007f04c5ffae70 0000000000a45ecc <runtime.newstack+716> 00007f04c5ffacd0: 000000c022182638 0000000200000008 00007f04c5fface0: 0000000000000040 00001039cc2ac7a2 00007f04c5ffacf0: 00001039c8ba0b8a 00001039cc2ac7a2 00007f04c5ffad00: 000000c0006c5b88 000000c000100400 00007f04c5ffad10: 0000000000000000 0000000000000800 00007f04c5ffad20: 0000000000001000 00007f04c5ffad60 00007f04c5ffad30: 00007f04c5ffad50 00007ffc53fad918 00007f04c5ffad40: 00007f04c5ffad78 000000c000102480 00007f04c5ffad50: 00007f04c5ffad88 0000000000a677fc <runtime.nanotime1+124> 00007f04c5ffad60: 00000000000045b0 00000000162d7e54 00007f04c5ffad70: 0000000000000000 0000000000001000 00007f04c5ffad80: 000000c0006c5ba0 000000c000102480 00007f04c5ffad90: 0000000000a3454c <runtime.checkTimers+460> 00001039c90a5e54 00007f04c5ffada0: 0000000000a3264e <runtime.execute+270> 00007f04c5ffadd0 00007f04c5ffadb0: <0000000000a3264e <runtime.execute+270> 000000c022182638 00007f04c5ffadc0: 000000c022182600 000000c0006c5b98 00007f04c5ffadd0: 0000000000bdc975 <type..hash.github.com/CortexFoundation/CortexTheseus/rlp.typekey+53> 000000c022182600 00007f04c5ffade0: 0000000000000000 0000000000000000 00007f04c5ffadf0: 0000000000000000 0000000000000000 00007f04c5ffae00: 000000c000055000 000000c02163d778 00007f04c5ffae10: 000000c02163e000 000000000172c523 00007f04c5ffae20: 000000c02163d7b8 000000c02163d778 00007f04c5ffae30: 0000000000000001 0000000000a65a50 <runtime.asmcgocall+112> 00007f04c5ffae40: 00007f04c5ffae68 0000000000a5c818 <runtime.goready.func1+56> 00007f04c5ffae50: 000000c020fe2000 0000000000000004 00007f04c5ffae60: 000000c000102401 00000000000008b8 00007f04c5ffae70: 000000c022182600 0000000000a6410f <runtime.morestack+143> 00007f04c5ffae80: 00007f04a4000020 runtime: unknown pc 0x1856a8e stack: frame={sp:0x7f04c5ffadb0, fp:0x0} stack=[0x7f04c57fb288,0x7f04c5ffae88) 00007f04c5ffacb0: 0000000300070f31 0000000000000000 00007f04c5ffacc0: 00007f04c5ffae70 0000000000a45ecc <runtime.newstack+716> 00007f04c5ffacd0: 000000c022182638 0000000200000008 00007f04c5fface0: 0000000000000040 00001039cc2ac7a2 00007f04c5ffacf0: 00001039c8ba0b8a 00001039cc2ac7a2 00007f04c5ffad00: 000000c0006c5b88 000000c000100400 00007f04c5ffad10: 0000000000000000 0000000000000800 00007f04c5ffad20: 0000000000001000 00007f04c5ffad60 00007f04c5ffad30: 00007f04c5ffad50 00007ffc53fad918 00007f04c5ffad40: 00007f04c5ffad78 000000c000102480 00007f04c5ffad50: 00007f04c5ffad88 0000000000a677fc <runtime.nanotime1+124> 00007f04c5ffad60: 00000000000045b0 00000000162d7e54 00007f04c5ffad70: 0000000000000000 0000000000001000 00007f04c5ffad80: 000000c0006c5ba0 000000c000102480 00007f04c5ffad90: 0000000000a3454c <runtime.checkTimers+460> 00001039c90a5e54 00007f04c5ffada0: 0000000000a3264e <runtime.execute+270> 00007f04c5ffadd0 00007f04c5ffadb0: <0000000000a3264e <runtime.execute+270> 000000c022182638 00007f04c5ffadc0: 000000c022182600 000000c0006c5b98 00007f04c5ffadd0: 0000000000bdc975 <type..hash.github.com/CortexFoundation/CortexTheseus/rlp.typekey+53> 000000c022182600 00007f04c5ffade0: 0000000000000000 0000000000000000 00007f04c5ffadf0: 0000000000000000 0000000000000000 00007f04c5ffae00: 000000c000055000 000000c02163d778 00007f04c5ffae10: 000000c02163e000 000000000172c523 00007f04c5ffae20: 000000c02163d7b8 000000c02163d778 00007f04c5ffae30: 0000000000000001 0000000000a65a50 <runtime.asmcgocall+112> 00007f04c5ffae40: 00007f04c5ffae68 0000000000a5c818 <runtime.goready.func1+56> 00007f04c5ffae50: 000000c020fe2000 0000000000000004 00007f04c5ffae60: 000000c000102401 00000000000008b8 00007f04c5ffae70: 000000c022182600 0000000000a6410f <runtime.morestack+143> 00007f04c5ffae80: 00007f04a4000020

goroutine 20893 [syscall]: runtime.cgocall(0x172c500, 0xc02163d7b8, 0x9) /usr/local/go/src/runtime/cgocall.go:154 +0x5b fp=0xc02163d788 sp=0xc02163d750 pc=0x9f603b github.com/CortexFoundation/CortexTheseus/consensus/cuckoo/plugins._Cfunc_CuckooVerifyProof_cuckaroo(0xc021d28620, 0x23a66988e5805338, 0xc020db8fd0, 0xc000000000) _cgo_gotypes.go:67 +0x48 fp=0xc02163d7b8 sp=0xc02163d788 pc=0x13d9a48 github.com/CortexFoundation/CortexTheseus/consensus/cuckoo/plugins.CuckooVerify_cuckaroo(0xc021d28620, 0x23a66988e5805338, 0x3b5809a0318efb5, 0x6a06bf804e18b8d, 0x7d6c21306aab21b, 0xa914f590a3d542d, 0xe00474a0d9ff69f, 0x106adfe510153f1d, 0x11740dce111b960b, 0x1840690417ccfc13, ...) /home/effofx/CortexTheseus/build/_workspace/src/github.com/CortexFoundation/CortexTheseus/consensus/cuckoo/plugins/cpu_helper_for_node.go:53 +0x1e6 fp=0xc02163d878 sp=0xc02163d7b8 pc=0x13d9ca6 github.com/CortexFoundation/CortexTheseus/consensus/cuckoo.(Cuckoo).CuckooVerifyHeader(0xc000459040, 0xc021d28620, 0x20, 0x20, 0x23a66988e5805338, 0xc02163da78, 0xc021dcec40, 0xc021edf4c8) /home/effofx/CortexTheseus/build/_workspace/src/github.com/CortexFoundation/CortexTheseus/consensus/cuckoo/consensus.go:1018 +0x126 fp=0xc02163da10 sp=0xc02163d878 pc=0x13e5b86 github.com/CortexFoundation/CortexTheseus/consensus/cuckoo.(Cuckoo).VerifySeal(0xc000459040, 0x1dc3cd8, 0xc0000c7900, 0xc022756000, 0xd4967129f2f9e400, 0x9d1f96b861a6365c) /home/effofx/CortexTheseus/build/_workspace/src/github.com/CortexFoundation/CortexTheseus/consensus/cuckoo/consensus.go:683 +0x24c fp=0xc02163db60 sp=0xc02163da10 pc=0x13e074c github.com/CortexFoundation/CortexTheseus/consensus/cuckoo.(Cuckoo).verifyHeader(0xc000459040, 0x1dc3cd8, 0xc0000c7900, 0xc022756000, 0xc022753b00, 0x3da24365e8070100, 0x608c9c43, 0x1dbc601, 0xc021a0de58) /home/effofx/CortexTheseus/build/_workspace/src/github.com/CortexFoundation/CortexTheseus/consensus/cuckoo/consensus.go:329 +0x9ce fp=0xc02163de20 sp=0xc02163db60 pc=0x13ddfee github.com/CortexFoundation/CortexTheseus/consensus/cuckoo.(Cuckoo).verifyHeaderWorker(0xc000459040, 0x1dc3cd8, 0xc0000c7900, 0xc0215f7680, 0x4d, 0x4d, 0xc00070fef0, 0x4d, 0x4d, 0x1, ...) /home/effofx/CortexTheseus/build/_workspace/src/github.com/CortexFoundation/CortexTheseus/consensus/cuckoo/consensus.go:189 +0x165 fp=0xc02163ded8 sp=0xc02163de20 pc=0x13dca05 github.com/CortexFoundation/CortexTheseus/consensus/cuckoo.(Cuckoo).VerifyHeaders.func1(0xc021a0de00, 0xc000459040, 0x1dc3cd8, 0xc0000c7900, 0xc0215f7680, 0x4d, 0x4d, 0xc00070fef0, 0x4d, 0x4d, ...) /home/effofx/CortexTheseus/build/_workspace/src/github.com/CortexFoundation/CortexTheseus/consensus/cuckoo/consensus.go:143 +0x115 fp=0xc02163df68 sp=0xc02163ded8 pc=0x13e93b5 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:1371 +0x1 fp=0xc02163df70 sp=0xc02163df68 pc=0xa65de1 created by github.com/CortexFoundation/CortexTheseus/consensus/cuckoo.(Cuckoo).VerifyHeaders /home/effofx/CortexTheseus/build/_workspace/src/github.com/CortexFoundation/CortexTheseus/consensus/cuckoo/consensus.go:141 +0x2fd

goroutine 1 [chan receive]: github.com/CortexFoundation/CortexTheseus/node.(Node).Wait(0xc0003d6a00) /home/effofx/CortexTheseus/build/_workspace/src/github.com/CortexFoundation/CortexTheseus/node/node.go:523 +0x7c main.cortex(0xc000484000, 0x0, 0x0) /home/effofx/CortexTheseus/build/_workspace/src/github.com/CortexFoundation/CortexTheseus/cmd/cortex/main.go:289 +0x1a9 github.com/CortexFoundation/CortexTheseus/vendor/gopkg.in/urfave/cli%2ev1.HandleAction(0x193ff80, 0x1c4cb30, 0xc000484000, 0xc000400600, 0x0) /home/effofx/CortexTheseus/build/_workspace/src/github.com/CortexFoundation/CortexTheseus/vendor/gopkg.in/urfave/cli.v1/app.go:490 +0x82 github.com/CortexFoundation/CortexTheseus/vendor/gopkg.in/urfave/cli%2ev1.(App).Run(0xc00045c340, 0xc00003c1b0, 0x3, 0x3, 0x0, 0x0) /home/effofx/CortexTheseus/build/_workspace/src/github.com/CortexFoundation/CortexTheseus/vendor/gopkg.in/urfave/cli.v1/app.go:264 +0x5f5 main.main() /home/effofx/CortexTheseus/build/_workspace/src/github.com/CortexFoundation/CortexTheseus/cmd/cortex/main.go:266 +0x55

rax 0xc02163e000 rbx 0xc02163d7b8 rcx 0xc02163d7b8 rdx 0xc020db8fd0 rdi 0xc021d28620 rsi 0x23a66988e5805338 rbp 0xc020db8fd0 rsp 0x7f04c5ffadb0 r8 0xc022182600 r9 0x0 r10 0x20 r11 0x0 r12 0xc02163e000 r13 0x1 r14 0x55 r15 0xffffffffffffffff rip 0x1856a8e rflags 0x10202 cs 0x33 fs 0x0 gs 0x0

I am running Ubuntu 20.04.2 LTS server. I am running as a virtual machine on a windows host in Virtualbox. My host is a 12core, 64GB ram, also running as my miner. The VM has a 2TB drive that is actually a physical extension and not a vmdiskfile. I've followed the steps outlined in the readme, and I even updated golang to 1.16.3 since the errors are something to do with go. What's interesting is, prior to a host OS reinstall, I had a VM of ubuntu up and running as a full node. It had sync'd the entire chain and I was seeing all the pools hit my node. I am unsure why I am unable to get it to run this time.

effofxprime commented 3 years ago

I have been googling around and came across someone who used gdb to help figure out whats going on. Here was the output from the SIGILL:

Thread 1 "cortex" received signal SIGILL, Illegal instruction. 0x000000000191908e in CuckooVerifyProof_cuckaroo () (gdb) x/4i $pc => 0x191908e <CuckooVerifyProof_cuckaroo+14>: vmovdqu (%rdi),%xmm0 0x1919092 <CuckooVerifyProof_cuckaroo+18>: vmovdqu 0x10(%rdi),%xmm1 0x1919097 <CuckooVerifyProof_cuckaroo+23>: mov %fs:0x28,%rax 0x19190a0 <CuckooVerifyProof_cuckaroo+32>: mov %rax,0x48(%rsp)

effofxprime commented 3 years ago

I have good news. I was able to resolve my issue. This will probably be a thing for anyone running a VM, including paid for solutions online or from your own PC. This is a CPU instruction problem. I narrowed my own issue down to missing AVX when running the following command on my Cortex VM:

cat /proc/cpuinfo

I had Hyper-V installed and enabled, I switched to KVM and removed Hyper-V. I also ensured that all my Intel VT was enabled. I used ICH over PIIX in virtualbox settings.

After doing that, I reinstalled from scratch and have a working full node now. If anyone is having a SIGILL termination like above, you are likely having the same issue but possibly with a different instruction problem. When I was googling around, it seemed like most of these kinds of errors were related to that and the gdb output helped narrow down which instruction.