Community

You need to log in to create posts and topics.

Still getting a lot of "ort" crashes resulting in extra cards

After 2-3 days without a reboot, I have about half a dozen weather cards and timer cards now. I know you sent out an update (5?) that you said would help this, but it's still crashing. I can clear it by restarting the card manager, but it's clearly not fully stable enough for a production level product yet.

 

@jnaujok

Did you see same amount of weather cards vs timer cards in your test or one created more instance than the other?

If there is other information you think would help us debugging the issue please let us know.

 

Thanks

I didn't actually count to make sure, but I do know there were multiples of each one. Will do it the next time.

As for error messages, it's the same messages in dmesg as before -- just less often.

[ 34.370490] device ra0 entered promiscuous mode
[ 34.375281] br-wlan: port 1(ra0) entered forwarding state
[ 34.380854] br-wlan: port 1(ra0) entered forwarding state
[ 34.387297] IPv6: ADDRCONF(NETDEV_CHANGE): br-wlan: link becomes ready
[ 36.376267] br-wlan: port 1(ra0) entered forwarding state
[ 36.667555] Interface apcli0 link up! (WPA2PSK AES)
[ 42.585426] random: nonblocking pool is initialized
[83578.077339]
[83578.077339] do_page_fault(): sending SIGSEGV to ort for invalid write access to 7f2b9fe0
[83578.085593] epc = 00414c49 in ort[400000+2c000]
[83578.090320] ra = 00415887 in ort[400000+2c000]
[83578.094951]
[98078.157229]
[98078.157229] do_page_fault(): sending SIGSEGV to ort for invalid write access to 7f1a7ffc
[98078.165497] epc = 004019c7 in ort[400000+2c000]
[98078.170126] ra = 00414bdb in ort[400000+2c000]
[98078.174751]
[166793.831509]
[166793.831509] do_page_fault(): sending SIGSEGV to ort for invalid write access to 7f557ffc
[166793.839852] epc = 004116d7 in ort[400000+2c000]
[166793.844570] ra = 0040e4cf in ort[400000+2c000]
[166793.849285]
[195856.991982]
[195856.991982] do_page_fault(): sending SIGSEGV to ort for invalid write access to 7f376fec
[195857.000359] epc = 00409143 in ort[400000+2c000]
[195857.005078] ra = 00414c93 in ort[400000+2c000]
[195857.009792]

I think I'm experiencing the same thing or at least something close:

` uptime: 01:03:15 up 5 days, 23:45, load average: 0.00, 0.02, 0.00`

I have four weather cards and three timer cards in the following order:

  • timer
  • weather
  • weather
  • timer
  • weather
  • timer
  • weather

If you'd like me to run any log commands and post just let me know.

Unsure if it helps but I stopped the oboo cards service to run the cards manually.  And I got this:

updateCard: '{"cmd":"update_card","id":5,"elements":[{"id":1,"value":"77"},{"id":5,"value":14},{"id":6,"value":"mph"},{"id":2,"value":"/usr/bin/img/img_sunny.bin"}]}'
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
error running 'loop()' function: Error
Segmentation fault

Can you push out or make available gdb with threading debug library and maybe I can get you some stack traces?

This update card statement seems no different to me than the others.

that one was weather.js

this one is timer.js

Message arrived to topic: /cardResponse, message is 47 chars long
recvMessage: payload is a string, converting...
message! topic: /cardResponse, value: [object Object]
A different card has become active
Message arrived to topic: /cardResponse, message is 47 chars long
recvMessage: payload is a string, converting...
message! topic: /cardResponse, value: [object Object]
A different card has become active
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit
error running 'loop()' function: RangeError: valstack limit

 

@ihermit2 ok, that gives us an idea of where to look! Thanks for the help, we'll work to resolve this duplicated cards issue.