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

SSL error monero v0.14.1.0 #5717

Closed
blacksheepicu opened this issue Jul 1, 2019 · 22 comments
Closed

SSL error monero v0.14.1.0 #5717

blacksheepicu opened this issue Jul 1, 2019 · 22 comments

Comments

@blacksheepicu
Copy link

blacksheepicu commented Jul 1, 2019

I found a bug in the new monero command line version (the official download) for ARMv7 devices.
Download link: https://downloads.getmonero.org/cli/linuxarm7

First thing to say, i had the old version of Monerod running flawles in the same environment.
After seting up a fresh system (Cubietruck /Cubieboard3 with Armbian OS) for v0.14.1.0 and building monerod up as i should it seems to start good and syncs fast.
When the process reaches 66% sync, this appears in monerods logs and he stops working:

"
2019-06-27 03:24:22.495 [P2P9] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1390 �[1;33mSynced 1237971/1865802 (66%, 627831 left)�[0m
2019-06-27 15:49:30.527 b6f14210 INFO logging contrib/epee/src/mlog.cpp:273 New log categories: *:WARNING,net:FATAL,net.http:FATAL,net.ssl:FATAL,net.p2p:FATAL,net.cn:FATAL,global:INFO,verify:FATAL,serialization:FATAL,stacktrace:INFO,logging:INFO,msgwriter:INFO
2019-06-27 15:49:30.529 b6f14210 INFO global src/daemon/main.cpp:281 Monero 'Boron Butterfly' (v0.14.1.0-release)
2019-06-27 15:49:30.532 b6f14210 INFO global contrib/epee/src/net_ssl.cpp:124 Generating SSL certificate
2019-06-27 15:49:46.772 b6f14210 ERROR msgwriter src/common/scoped_message_writer.h:102 Error: Couldn't connect to daemon: 192.168.0.171:18081
"

When i start monerod again and watch syncing i see this popping up before he shuts down:

"2019-07-01 12:42:18.241 I Synced 1246238/1868959 (66%, 622721 left)
Segmentation fault"

I set three new instances up with a clean system-> same result!
Then i used another device (BananaPi Pro+ Armbian)-> same problem!

Some SSL bugs makes going farer impossible.
And after the error in the first run monerod also stops to update his log data.

@moneromooo-monero
Copy link
Collaborator

  • Make sure monerod is not running (not hard apparently in this case)
  • in a separate terminal, run the following commands:
  • echo core | sudo tee /proc/sys/kernel/core_pattern # you might not have to do this if this already contains "core" or similar thing without a pipe
  • ulimit -c unlimited
  • run monerod
  • wait for it to crash
  • gdb monerod core* # core might be named with numbers at the end, like core.7328, use the actual filename
  • in gdb, run: bt full
  • paste the results of this here

@blacksheepicu
Copy link
Author

Here you are. But i do not think i did the "gdb monerod core*" part correct, right!?

:~$ gdb monerod core*
GNU gdb (Ubuntu 8.1-0ubuntu3) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "arm-linux-gnueabihf".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/.
Find the GDB manual and other documentation resources online at:
http://www.gnu.org/software/gdb/documentation/.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
monerod: No such file or directory.
[New LWP 1635]
[New LWP 1621]
[New LWP 1584]
[New LWP 1623]
[New LWP 1620]
[New LWP 1624]
[New LWP 1626]
[New LWP 1627]
[New LWP 1628]
[New LWP 1625]
[New LWP 1637]
[New LWP 1629]
[New LWP 1630]
[New LWP 1631]
[New LWP 1622]
[New LWP 1632]
[New LWP 1633]
[New LWP 1640]
[New LWP 1639]
[New LWP 1638]
[New LWP 1636]
[New LWP 1634]
Core was generated by `/home/monero/monero-arm-linux-gnueabihf/monerod --rpc-bind-ip=192.168.1.15 --rp'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00998ffc in ?? ()
[Current thread is 1 (LWP 1635)]
(gdb) bt full
#0 0x00998ffc in ?? ()
No symbol table info available.
#1 0x96391bd2 in ?? ()
No symbol table info available.
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

@moneromooo-monero
Copy link
Collaborator

You need to give the path to monerod, so: gdb /home/monero/monero-arm-linux-gnueabihf/monerod core*

@blacksheepicu
Copy link
Author

$ gdb /home/monero/monero-arm-linux-gnueabihf/monerod core*
GNU gdb (Ubuntu 8.1-0ubuntu3) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "arm-linux-gnueabihf".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/.
Find the GDB manual and other documentation resources online at:
http://www.gnu.org/software/gdb/documentation/.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /home/monero/monero-arm-linux-gnueabihf/monerod...(no debugging symbols found)...done.
[New LWP 6863]
[New LWP 6845]
[New LWP 6847]
[New LWP 6831]
[New LWP 6844]
[New LWP 6848]
[New LWP 6850]
[New LWP 6851]
[New LWP 6849]
[New LWP 6852]
[New LWP 6853]
[New LWP 6854]
[New LWP 6855]
[New LWP 6856]
[New LWP 6857]
[New LWP 6858]
[New LWP 6860]
[New LWP 6862]
[New LWP 6864]
[New LWP 6861]
[New LWP 6859]
[New LWP 6846]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
Core was generated by `/home/monero/monero-arm-linux-gnueabihf/monerod --rpc-bind-ip=192.168.1.15 --rp'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00902ffc in keccak ()
[Current thread is 1 (Thread 0xa2de9440 (LWP 6863))]
(gdb) bt full
#0 0x00902ffc in keccak ()
No symbol table info available.
#1 0x00902c6e in cn_fast_hash ()
No symbol table info available.
#2 0x00a1b0be in cryptonote::calculate_transaction_prunable_hash(cryptonote::transaction const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const*, crypto::hash&) ()
No symbol table info available.
#3 0x00a1b5e4 in cryptonote::calculate_transaction_hash(cryptonote::transaction const&, crypto::hash&, unsigned int*) ()
No symbol table info available.
#4 0x00a1b7d6 in cryptonote::get_transaction_hash(cryptonote::transaction const&, crypto::hash&, unsigned int*) ()
No symbol table info available.
#5 0x00a20050 in cryptonote::parse_and_validate_tx_from_blob(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, cryptonote::transaction&, crypto::hash&) ()
No symbol table info available.
#6 0x008e2c60 in cryptonote::core::handle_incoming_tx_pre(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, cryptonote::tx_verification_context&, cryptonote::transaction&, crypto::hash&, bool, bool, bool) ()
No symbol table info available.
#7 0x008e3006 in std::_Function_handler<void (), cryptonote::core::handle_incoming_txs(std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > const&, std::vector<cryptonote::tx_verification_context, std::allocatorcryptonote::tx_verification_context >&, bool, bool, bool)::{lambda()#1}>::_M_invoke(std::_Any_data const&) ()
No symbol table info available.
#8 0x00936068 in tools::threadpool::run(bool) ()
No symbol table info available.
#9 0x009365c8 in tools::threadpool::waiter::wait(tools::threadpool*) ()
No symbol table info available.
#10 0x008e4d32 in cryptonote::core::handle_incoming_txs(std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > const&, std::vector<cryptonote::tx_verification_cont---Type to continue, or q to quit---

@blacksheepicu
Copy link
Author

output should be ok now i think?!

@iDunk5400
Copy link
Contributor

Can you also info registers and disas in gdb and paste the output here ? Enclose your paste in three backtics ( ```) please.
I predict there will be a => 0x00902ffc <+xxx>: ldrd r3, r1, [r0] line in the disassembly output.

@blacksheepicu
Copy link
Author

Sure! I hope i understood the backtics the right way ;)

'
(gdb) info registers
r0 0x86defc3a 2262760506
r1 0x91fe7c6d 2449374317
r2 0x776e2658 2003707480
r3 0xd8e491af 3638858159
r4 0x11 17
r5 0x3788 14216
r6 0x88 136
r7 0x86defbd2 2262760402
r8 0x11 17
r9 0xa2de68e0 2732484832
r10 0x88 136
r11 0xc8 200
r12 0xa2de6948 2732484936
sp 0xa2de68d0 0xa2de68d0
lr 0x86defc5a -2032206758
pc 0x902ffc 0x902ffc <keccak+120>
cpsr 0x800f0030 -2146500560
fpscr 0x80000010 -2147483632
''
(gdb) disas
Dump of assembler code for function keccak:
0x00902f84 <+0>: stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
0x00902f88 <+4>: mov r7, r0
0x00902f8a <+6>: ldr r4, [pc, #356] ; (0x9030f0 <keccak+364>)
0x00902f8c <+8>: sub sp, #372 ; 0x174
0x00902f8e <+10>: ldr r0, [pc, #356] ; (0x9030f4 <keccak+368>)
0x00902f90 <+12>: subs.w r11, r3, #0
0x00902f94 <+16>: add r4, pc
0x00902f96 <+18>: str r2, [sp, #8]
0x00902f98 <+20>: mov r2, r4
0x00902f9a <+22>: ldr r2, [r4, r0]
0x00902f9c <+24>: str r2, [sp, #12]
0x00902f9e <+26>: ldr r2, [r2, #0]
0x00902fa0 <+28>: str r2, [sp, #364] ; 0x16c
0x00902fa2 <+30>: ble.w 0x9030e6 <keccak+354>
0x00902fa6 <+34>: cmp.w r11, #200 ; 0xc8
0x00902faa <+38>: it ne
0x00902fac <+40>: cmpne.w r11, #100 ; 0x64
0x00902fb0 <+44>: bgt.w 0x9030e6 <keccak+354>
0x00902fb4 <+48>: cmp.w r11, #200 ; 0xc8
0x00902fb8 <+52>: add.w r9, sp, #16
0x00902fbc <+56>: it ne
0x00902fbe <+58>: rsbne r6, r11, #100 ; 0x64
0x00902fc2 <+62>: mov r5, r1
0x00902fc4 <+64>: mov.w r2, #200 ; 0xc8
0x00902fc8 <+68>: mov.w r1, #0
0x00902fcc <+72>: it ne
0x00902fce <+74>: lslne r6, r6, #1
0x00902fd0 <+76>: mov r0, r9
0x00902fd2 <+78>: itte eq
0x00902fd4 <+80>: moveq.w r8, #17
0x00902fd8 <+84>: moveq r6, #136 ; 0x88
0x00902fda <+86>: movne.w r8, r6, lsr #3
0x00902fde <+90>: blx 0x6c041c <memset@plt+4>
'''

@iDunk5400
Copy link
Contributor

iDunk5400 commented Jul 1, 2019

Almost there :)
` is a backtick, not ' ;)

Please provide the full output of disas, i.e. press Enter until it gets you back to (gdb) prompt and paste the full text here.
```
Your paste here
```

Thanks

/Edit: (like this)

(gdb) disas
Dump of assembler code for function keccak:
   0x008e9d3c <+0>:     stmdb   sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
   0x008e9d40 <+4>:     mov     r7, r0
   0x008e9d42 <+6>:     ldr     r4, [pc, #356]  ; (0x8e9ea8 <keccak+364>)
   0x008e9d44 <+8>:     sub     sp, #372        ; 0x174
   0x008e9d46 <+10>:    ldr     r0, [pc, #356]  ; (0x8e9eac <keccak+368>)
   0x008e9d48 <+12>:    subs.w  r11, r3, #0
   0x008e9d4c <+16>:    add     r4, pc
   0x008e9d4e <+18>:    str     r2, [sp, #8]
   0x008e9d50 <+20>:    mov     r2, r4
   0x008e9d52 <+22>:    ldr     r2, [r4, r0]
   0x008e9d54 <+24>:    str     r2, [sp, #12]
   0x008e9d56 <+26>:    ldr     r2, [r2, #0]
   0x008e9d58 <+28>:    str     r2, [sp, #364]  ; 0x16c
   0x008e9d5a <+30>:    ble.w   0x8e9e9e <keccak+354>
   0x008e9d5e <+34>:    cmp.w   r11, #200       ; 0xc8
   0x008e9d62 <+38>:    it      ne
   0x008e9d64 <+40>:    cmpne.w r11, #100       ; 0x64
   0x008e9d68 <+44>:    bgt.w   0x8e9e9e <keccak+354>
   0x008e9d6c <+48>:    cmp.w   r11, #200       ; 0xc8
   0x008e9d70 <+52>:    add.w   r9, sp, #16
   0x008e9d74 <+56>:    it      ne
   0x008e9d76 <+58>:    rsbne   r6, r11, #100   ; 0x64
   0x008e9d7a <+62>:    mov     r5, r1
   0x008e9d7c <+64>:    mov.w   r2, #200        ; 0xc8
   0x008e9d80 <+68>:    mov.w   r1, #0
   0x008e9d84 <+72>:    it      ne
   0x008e9d86 <+74>:    lslne   r6, r6, #1
   0x008e9d88 <+76>:    mov     r0, r9
   0x008e9d8a <+78>:    itte    eq
   0x008e9d8c <+80>:    moveq.w r8, #17
   0x008e9d90 <+84>:    moveq   r6, #136        ; 0x88
   0x008e9d92 <+86>:    movne.w r8, r6, lsr #3
   0x008e9d96 <+90>:    blx     0x6a6784 <memset@plt+4>
   0x008e9d9a <+94>:    cmp     r6, r5
   0x008e9d9c <+96>:    bhi.n   0x8e9de4 <keccak+168>
   0x008e9d9e <+98>:    mov.w   r10, r8, lsl #3
   0x008e9da2 <+102>:   mov     r4, r8
   0x008e9da4 <+104>:   add.w   r12, sp, #8
   0x008e9da8 <+108>:   add.w   lr, r10, r7
   0x008e9dac <+112>:   mov     r0, r7
   0x008e9dae <+114>:   cbz     r4, 0x8e9dd2 <keccak+150>
   0x008e9db0 <+116>:   ldr.w   r2, [r12, #8]!
=> 0x008e9db4 <+120>:   ldrd    r3, r1, [r0]
   0x008e9db8 <+124>:   adds    r0, #8
   0x008e9dba <+126>:   cmp     r0, lr
   0x008e9dbc <+128>:   eor.w   r2, r2, r3
   0x008e9dc0 <+132>:   ldr.w   r3, [r12, #4]
   0x008e9dc4 <+136>:   str.w   r2, [r12]
   0x008e9dc8 <+140>:   eor.w   r3, r3, r1
   0x008e9dcc <+144>:   str.w   r3, [r12, #4]
   0x008e9dd0 <+148>:   bne.n   0x8e9db0 <keccak+116>
   0x008e9dd2 <+150>:   subs    r5, r5, r6
   0x008e9dd4 <+152>:   movs    r1, #24
   0x008e9dd6 <+154>:   mov     r0, r9
---Type <return> to continue, or q <return> to quit---
   0x008e9dd8 <+156>:   add     r7, r6
   0x008e9dda <+158>:   bl      0x8e9a94 <keccakf>
   0x008e9dde <+162>:   cmp     r6, r5
   0x008e9de0 <+164>:   bls.n   0x8e9da4 <keccak+104>
   0x008e9de2 <+166>:   mov     r8, r4
   0x008e9de4 <+168>:   add.w   r10, r5, #1
   0x008e9de8 <+172>:   cmp.w   r10, #143       ; 0x8f
   0x008e9dec <+176>:   ite     ls
   0x008e9dee <+178>:   movls   r3, #0
   0x008e9df0 <+180>:   movhi   r3, #1
   0x008e9df2 <+182>:   cmp     r6, r5
   0x008e9df4 <+184>:   it      cc
   0x008e9df6 <+186>:   orrcc.w r3, r3, #1
   0x008e9dfa <+190>:   cmp     r3, #0
   0x008e9dfc <+192>:   bne.n   0x8e9e9e <keccak+354>
   0x008e9dfe <+194>:   adds    r3, r6, #1
   0x008e9e00 <+196>:   cmp     r3, #143        ; 0x8f
   0x008e9e02 <+198>:   bhi.n   0x8e9e9e <keccak+354>
   0x008e9e04 <+200>:   subs    r3, r6, #1
   0x008e9e06 <+202>:   str     r3, [sp, #4]
   0x008e9e08 <+204>:   cmp     r3, #143        ; 0x8f
   0x008e9e0a <+206>:   bhi.n   0x8e9e9e <keccak+354>
   0x008e9e0c <+208>:   add     r4, sp, #220    ; 0xdc
   0x008e9e0e <+210>:   cmp     r5, #0
   0x008e9e10 <+212>:   bne.n   0x8e9e90 <keccak+340>
   0x008e9e12 <+214>:   add     r3, sp, #368    ; 0x170
   0x008e9e14 <+216>:   sub.w   r2, r6, r10
   0x008e9e18 <+220>:   add     r5, r3
   0x008e9e1a <+222>:   add.w   r0, r4, r10
   0x008e9e1e <+226>:   movs    r1, #0
   0x008e9e20 <+228>:   movs    r3, #1
   0x008e9e22 <+230>:   strb.w  r3, [r5, #-148]
   0x008e9e26 <+234>:   blx     0x6a6784 <memset@plt+4>
   0x008e9e2a <+238>:   ldr     r3, [sp, #4]
   0x008e9e2c <+240>:   add     r2, sp, #368    ; 0x170
   0x008e9e2e <+242>:   add     r3, r2
   0x008e9e30 <+244>:   mov     r10, r3
   0x008e9e32 <+246>:   ldrb.w  r3, [r3, #-148]
   0x008e9e36 <+250>:   orn     r3, r3, #127    ; 0x7f
   0x008e9e3a <+254>:   strb.w  r3, [r10, #-148]
   0x008e9e3e <+258>:   cmp.w   r8, #0
   0x008e9e42 <+262>:   beq.n   0x8e9e66 <keccak+298>
   0x008e9e44 <+264>:   add     r3, sp, #8
   0x008e9e46 <+266>:   add.w   r8, r3, r8, lsl #3
   0x008e9e4a <+270>:   ldr.w   r1, [r3, #8]!
   0x008e9e4e <+274>:   ldrd    r5, r0, [r4]
   0x008e9e52 <+278>:   adds    r4, #8
   0x008e9e54 <+280>:   cmp     r8, r3
   0x008e9e56 <+282>:   ldr     r2, [r3, #4]
   0x008e9e58 <+284>:   eor.w   r1, r1, r5
   0x008e9e5c <+288>:   str     r1, [r3, #0]
   0x008e9e5e <+290>:   eor.w   r2, r2, r0
   0x008e9e62 <+294>:   str     r2, [r3, #4]
   0x008e9e64 <+296>:   bne.n   0x8e9e4a <keccak+270>
   0x008e9e66 <+298>:   movs    r1, #24
---Type <return> to continue, or q <return> to quit---
   0x008e9e68 <+300>:   mov     r0, r9
   0x008e9e6a <+302>:   bl      0x8e9a94 <keccakf>
   0x008e9e6e <+306>:   tst.w   r11, #7
   0x008e9e72 <+310>:   bne.n   0x8e9e9e <keccak+354>
   0x008e9e74 <+312>:   bic.w   r2, r11, #7
   0x008e9e78 <+316>:   mov     r1, r9
   0x008e9e7a <+318>:   ldr     r0, [sp, #8]
   0x008e9e7c <+320>:   blx     0x6a5bbc <memcpy@plt+4>
   0x008e9e80 <+324>:   ldr     r3, [sp, #12]
   0x008e9e82 <+326>:   ldr     r2, [sp, #364]  ; 0x16c
   0x008e9e84 <+328>:   ldr     r3, [r3, #0]
   0x008e9e86 <+330>:   cmp     r2, r3
   0x008e9e88 <+332>:   bne.n   0x8e9ea2 <keccak+358>
   0x008e9e8a <+334>:   add     sp, #372        ; 0x174
   0x008e9e8c <+336>:   ldmia.w sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
   0x008e9e90 <+340>:   mov     r1, r7
   0x008e9e92 <+342>:   movs    r3, #144        ; 0x90
   0x008e9e94 <+344>:   mov     r2, r5
   0x008e9e96 <+346>:   mov     r0, r4
   0x008e9e98 <+348>:   blx     0x6a5f7c <__memcpy_chk@plt>
   0x008e9e9c <+352>:   b.n     0x8e9e12 <keccak+214>
   0x008e9e9e <+354>:   bl      0x8e9a64 <local_abort.constprop.0>
   0x008e9ea2 <+358>:   blx     0x6a54e0 <__stack_chk_fail@plt>
   0x008e9ea6 <+362>:   nop
   0x008e9ea8 <+364>:   eorseq  r0, r5, r12, ror r9
   0x008e9eac <+368>:   andeq   r2, r0, r4, lsr r1
End of assembler dump.
(gdb)

@blacksheepicu
Copy link
Author

I hope i got it right

(gdb) disas
Dump of assembler code for function keccak:
0x00902f84 <+0>: stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
0x00902f88 <+4>: mov r7, r0
0x00902f8a <+6>: ldr r4, [pc, #356] ; (0x9030f0 <keccak+364>)
0x00902f8c <+8>: sub sp, #372 ; 0x174
0x00902f8e <+10>: ldr r0, [pc, #356] ; (0x9030f4 <keccak+368>)
0x00902f90 <+12>: subs.w r11, r3, #0
0x00902f94 <+16>: add r4, pc
0x00902f96 <+18>: str r2, [sp, #8]
0x00902f98 <+20>: mov r2, r4
0x00902f9a <+22>: ldr r2, [r4, r0]
0x00902f9c <+24>: str r2, [sp, #12]
0x00902f9e <+26>: ldr r2, [r2, #0]
0x00902fa0 <+28>: str r2, [sp, #364] ; 0x16c
0x00902fa2 <+30>: ble.w 0x9030e6 <keccak+354>
0x00902fa6 <+34>: cmp.w r11, #200 ; 0xc8
0x00902faa <+38>: it ne
0x00902fac <+40>: cmpne.w r11, #100 ; 0x64
0x00902fb0 <+44>: bgt.w 0x9030e6 <keccak+354>
0x00902fb4 <+48>: cmp.w r11, #200 ; 0xc8
0x00902fb8 <+52>: add.w r9, sp, #16
0x00902fbc <+56>: it ne
0x00902fbe <+58>: rsbne r6, r11, #100 ; 0x64
0x00902fc2 <+62>: mov r5, r1
0x00902fc4 <+64>: mov.w r2, #200 ; 0xc8
0x00902fc8 <+68>: mov.w r1, #0
0x00902fcc <+72>: it ne
0x00902fce <+74>: lslne r6, r6, #1
0x00902fd0 <+76>: mov r0, r9
0x00902fd2 <+78>: itte eq
0x00902fd4 <+80>: moveq.w r8, #17
0x00902fd8 <+84>: moveq r6, #136 ; 0x88
0x00902fda <+86>: movne.w r8, r6, lsr #3
0x00902fde <+90>: blx 0x6c041c <memset@plt+4>
---Type to continue, or q to quit---
0x00902fe2 <+94>: cmp r6, r5
0x00902fe4 <+96>: bhi.n 0x90302c <keccak+168>
0x00902fe6 <+98>: mov.w r10, r8, lsl #3
0x00902fea <+102>: mov r4, r8
0x00902fec <+104>: add.w r12, sp, #8
0x00902ff0 <+108>: add.w lr, r10, r7
0x00902ff4 <+112>: mov r0, r7
0x00902ff6 <+114>: cbz r4, 0x90301a <keccak+150>
0x00902ff8 <+116>: ldr.w r2, [r12, #8]!
=> 0x00902ffc <+120>: ldrd r3, r1, [r0]
0x00903000 <+124>: adds r0, #8
0x00903002 <+126>: cmp r0, lr
0x00903004 <+128>: eor.w r2, r2, r3
0x00903008 <+132>: ldr.w r3, [r12, #4]
0x0090300c <+136>: str.w r2, [r12]
0x00903010 <+140>: eor.w r3, r3, r1
0x00903014 <+144>: str.w r3, [r12, #4]
0x00903018 <+148>: bne.n 0x902ff8 <keccak+116>
0x0090301a <+150>: subs r5, r5, r6
0x0090301c <+152>: movs r1, #24
0x0090301e <+154>: mov r0, r9
0x00903020 <+156>: add r7, r6
0x00903022 <+158>: bl 0x902ccc
0x00903026 <+162>: cmp r6, r5
0x00903028 <+164>: bls.n 0x902fec <keccak+104>
0x0090302a <+166>: mov r8, r4
0x0090302c <+168>: add.w r10, r5, #1
0x00903030 <+172>: cmp.w r10, #143 ; 0x8f
0x00903034 <+176>: ite ls
0x00903036 <+178>: movls r3, #0
0x00903038 <+180>: movhi r3, #1
0x0090303a <+182>: cmp r6, r5
0x0090303c <+184>: it cc
0x0090303e <+186>: orrcc.w r3, r3, #1

@iDunk5400
Copy link
Contributor

Good enough :)

@moneromooo-monero: Looks like the issue is confirmed on ARMv7. It only seems to happen after v4.

@blacksheepicu
Copy link
Author

Ok, glad i could help. And i hope you find a solution soon to fix this.
I am working between 3-4 weeks now to get the node running stable on my cubietruck including a public hidden service on TOR and i am really happy when this comes to an end ;D

@iDunk5400
Copy link
Contributor

#5724/#5726 fix the segfault in keccak() for me on ARMv7.

@blacksheepicu
Copy link
Author

I'm a little embarrassed to admit that, but unfortunately I do not know how to get that inserted the right way.
My coding skills are more on beginner level. I only signed up here to submit this issue...

@blacksheepicu
Copy link
Author

Is the actual download for ARMv7 devices patched already?

@moneromooo-monero
Copy link
Collaborator

No.

@moneromooo-monero
Copy link
Collaborator

moneromooo-monero commented Jul 4, 2019

Oh, but you can get a build bot binary from the bottom of the #5726 PR when the link for ARM pops up, they're slow to build and I just updated the patch after review.

@blacksheepicu
Copy link
Author

i am sorry but i do not seem to get it done

@blacksheepicu
Copy link
Author

But if it worked for you it might be fine. So if you add the patch to the ARMv7 download, i can go the standart way to set everything up and run the sync
I will give you feedback as soon as i reach 100% sync or the errot still happens.
As the actual download had the bug for me and others and on multiple devices it can't make the situation worse then it is.

@scottAnselmo
Copy link

scottAnselmo commented Jul 24, 2019

For what it's worth this issue is not limited to ARM, I get it on x86 when starting the daemon via the GUI

General system specs FWIW:

Operating System: Manjaro Linux 
KDE Plasma Version: 5.16.3
KDE Frameworks Version: 5.60.0
Qt Version: 5.13.0
Kernel Version: 5.1.18-1-MANJARO
OS Type: 64-bit
Processors: 8 × Intel® Core™ i7-6700K CPU @ 4.00GHz
Memory: 15.6 GiB of RAM

@blacksheepicu
Copy link
Author

So this is not solved/ patched till now? I am using v14.0.0.0 at the moment till this is done but the last v is much slower and sometimes too slow to broadcast sucessfull on arm v7 devices

@dEBRUYNE-1
Copy link
Contributor

dEBRUYNE-1 commented Jul 24, 2019

@blacksheepicu - Have you tried CLI v0.14.1.2 (which got released a few days ago)?

@blacksheepicu
Copy link
Author

Yes i tested v0.14.1.2 now. This version seems to work flawles!
Good job!

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

5 participants