[Ovmsdev] LWIP lock-up

Tom Parker tom at carrott.org
Thu Mar 29 09:04:19 HKT 2018


On 29/03/18 00:02, Mark Webb-Johnson wrote:

> I unplugged my antenna, then put it in a steel box. It still got signal :(

lol

I've got it hung up at the moment. Unfortunately it was during the one 
drive where I didn't use the datalogger so I don't have the logs leading 
up to the hang.

Time is still advancing, but monotonic is not. I don't have it connected 
to the idf monitor so addr2line is a bit tricky.

OVMS> tas   module tasks
Number of Tasks = 13      Stack:  Now   Max Total    Heap 32-bit SPIRAM
3FFAFB10  1 Blk esp_timer         396   444  4096   55100 644      0
3FFBD584  2 Blk eventTask         448   448  4608       0 0      0
3FFC5C8C  3 Blk CanRxTask         424   824  4096       0 0      0
3FFCCE0C  4 Blk ipc0              392   504  1024   10848 0      0
3FFCD40C  5 Blk ipc1              392   504  1024      12 0      0
3FFCF234  8 Rdy IDLE              368   496  1024       0 0      0
3FFCF7C8  9 Rdy IDLE              356   692  1024       0 0      0
3FFD115C 10 Blk Tmr Svc          1512  3928  6144     744 0      0
3FFD3D6C 14 Blk Housekeeping      356  3444  6144   55792 0      0
3FFCECA0 16 Blk tiT               908  3852  4608   23968 0      0
3FFDD374 17 Blk SIMCOMTask        464  2528  4096    4404 0      0
3FFDF9B4 18 Rdy AsyncConsole      764  3068  5120     516 27488      0
3FFE3E28 19 Blk Vrx Task          456  3016  4096       0 0      0

OVMS> module tasks stacks
Number of Tasks = 13      Stack:  Now   Max Total    Heap 32-bit SPIRAM
3FFAFB10  1 Blk esp_timer         396   444  4096   55100 644      0
   0x400dc0e7  0x4008b981
3FFBD584  2 Blk eventTask         448   448  4608       0 0      0
   0x4019bfa8  0x4008b981
3FFC5C8C  3 Blk CanRxTask         424   824  4096       0 0      0
   0x400d3f41  0x4008b981
3FFCCE0C  4 Blk ipc0              392   504  1024   10848 0      0
   0x4008152b  0x4008b981  0x40081363
3FFCD40C  5 Blk ipc1              392   504  1024      12 0      0
   0x4008152b  0x4008b981  0x400813dc
3FFCF234  8 Rdy IDLE              368   496  1024       0 0      0
   0x4008ca40  0x4008bcf3  0x4008bcf3
3FFCF7C8  9 Rdy IDLE              356   692  1024       0 0      0
   0x4008ca40  0x40082197  0x4008c5bc  0x40082197
3FFD115C 10 Blk Tmr Svc          1512  3928  6144     744 0      0
   0x401e52d0  0x4008b981  0x401cbf90  0x40082d58  0x401cb468 
0x4012b2d4  0x401299f3  0x40129900  0x40129f8c  0x4012a037 0x4014a76c  
0x400e208a  0x401183a2  0x400e8fdc  0x400d4d68 0x400e8d4c  0x400e8fe8  
0x400eaeb6  0x400eb07b  0x400eb07b 0x4008d7c9  0x40081f10  0x4008d818  
0x40081f7e  0x4008d7fc 0x4008d90b
3FFD3D6C 14 Blk Housekeeping      356  3444  6144   55792 0      0
   0x400eae77  0x4008c972  0x400e2170
3FFCECA0 16 Blk tiT               908  3852  4608   23968 0      0
   0x401e52d0  0x4008b981  0x400eec76  0x401cbf90  0x401cb450 
0x4012b7ec  0x4020118e  0x401e0672  0x401e53e1  0x4008b981 0x402011b6  
0x401e7654  0x401e2920  0x401e3ea2  0x401d71a8 0x401cbdaa
3FFDD374 17 Blk SIMCOMTask        464  2528  4096    4404 0      0
   0x40129909  0x4008b981  0x401299ac
3FFDF9B4 18 Rdy AsyncConsole     1148  3068  5120     516 27488      0
   0x400e3f09  0x400e7438  0x400ee4b1  0x400ee5c8  0x400ee5ba 
0x400ee5ba  0x400ee5f0  0x400e3a3b  0x400f130c  0x400f1373 0x400e3a6a  
0x400e8240  0x4017cfb1  0x401fb752  0x400e4010 0x400e8274  0x400e8460  
0x400e3ebc  0x400e3ecb  0x400e6c3c
3FFE3E28 19 Blk Vrx Task          456  3016  4096       0 0      0
   0x4012e589  0x4008b981  0x401fc148

Blk Tmr Svc and Blk tiT look suspect.

Blk Tmr Svc
~/esp/xtensa-esp32-elf/bin/xtensa-esp32-elf-addr2line -pfiaC -e 
build/ovms3.elf  0x401e52d0  0x4008b981  0x401cbf90  0x40082d58 
0x401cb468  0x4012b2d4  0x401299f3  0x40129900  0x40129f8c 0x4012a037  
0x4014a76c  0x400e208a  0x401183a2  0x400e8fdc 0x400d4d68  0x400e8d4c  
0x400e8fe8  0x400eaeb6  0x400eb07b 0x400eb07b  0x4008d7c9  0x40081f10  
0x4008d818  0x40081f7e 0x4008d7fc  0x4008d90b
0x401e52d0: sys_arch_sem_wait at 
/home/ubuntu/esp/esp-idf/components/lwip/port/freertos/sys_arch.c:548
0x4008b981: xQueueGenericReceive at 
/home/ubuntu/esp/esp-idf/components/freertos/./queue.c:2037
0x401cbf90: tcpip_api_call at 
/home/ubuntu/esp/esp-idf/components/lwip/api/tcpip.c:474
0x40082d58: _free_r at 
/home/ubuntu/esp/esp-idf/components/newlib/./syscalls.c:42
0x401cb468: pppapi_close at 
/home/ubuntu/esp/esp-idf/components/lwip/api/pppapi.c:319
0x4012b2d4: GsmPPPOS::Shutdown(bool) at 
/vagrant/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/simcom/src/gsmpppos.cpp:219
0x401299f3: simcom::State1Ticker1() at 
/vagrant/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/simcom/src/simcom.cpp:531
0x40129900: simcom::Task() at 
/vagrant/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/simcom/src/simcom.cpp:88
0x40129f8c: simcom::Ticker(std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >, void*) at 
/vagrant/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/simcom/src/simcom.cpp:257
0x4012a037: std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >::_M_data() const at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:135
  (inlined by) std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >::_M_is_local() const at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:170
  (inlined by) std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >::_M_dispose() at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:179
  (inlined by) std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >::~basic_string() at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:544
  (inlined by) void std::_Mem_fn_base<void 
(simcom::*)(std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, void*), 
true>::operator()<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >, void*, void>(simcom*, 
std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >&&, void*&&) const at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/functional:600
  (inlined by) void std::_Bind<std::_Mem_fn<void 
(simcom::*)(std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, void*)> (simcom*, std::_Placeholder<1>, 
std::_Placeholder<2>)>::__call<void, std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >&&, void*&&, 0u, 1u, 
2u>(std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >&&, void*&&>&&, std::_Index_tuple<0u, 1u, 2u>) at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/functional:1074
  (inlined by) void std::_Bind<std::_Mem_fn<void 
(simcom::*)(std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, void*)> (simcom*, std::_Placeholder<1>, 
std::_Placeholder<2>)>::operator()<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >, void*, 
void>(std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >&&, void*&&) at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/functional:1133
  (inlined by) std::_Function_handler<void 
(std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, void*), std::_Bind<std::_Mem_fn<void 
(simcom::*)(std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, void*)> (simcom*, std::_Placeholder<1>, 
std::_Placeholder<2>)> >::_M_invoke(std::_Any_data const&, 
std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >&&, void*&&) at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/functional:1871
0x4014a76c: opendir at /home/ubuntu/esp/esp-idf/components/vfs/./vfs.c:540
0x400e208a: std::function<void (OvmsMetric*)>::operator()(OvmsMetric*) 
const at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/functional:2271
0x401183a2: void std::_Mem_fn_base<void (OvmsServerV2::*)(OvmsMetric*), 
true>::operator()<OvmsMetric*, void>(OvmsServerV2*, OvmsMetric*&&) const 
at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/functional:600
  (inlined by) void std::_Bind<std::_Mem_fn<void 
(OvmsServerV2::*)(OvmsMetric*)> (OvmsServerV2*, 
std::_Placeholder<1>)>::__call<void, OvmsMetric*&&, 0u, 
1u>(std::tuple<OvmsMetric*&&>&&, std::_Index_tuple<0u, 1u>) at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/functional:1074
  (inlined by) void std::_Bind<std::_Mem_fn<void 
(OvmsServerV2::*)(OvmsMetric*)> (OvmsServerV2*, 
std::_Placeholder<1>)>::operator()<OvmsMetric*, void>(OvmsMetric*&&) at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/functional:1133
  (inlined by) std::_Function_handler<void (OvmsMetric*), 
std::_Bind<std::_Mem_fn<void (OvmsServerV2::*)(OvmsMetric*)> 
(OvmsServerV2*, std::_Placeholder<1>)> >::_M_invoke(std::_Any_data 
const&, OvmsMetric*&&) at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/functional:1871
0x400e8fdc: OvmsEvents::SignalEvent(std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >, void*) at 
/vagrant/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_events.cpp:155
0x400d4d68: void std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> 
 >::_M_construct<char*>(char*, char*, std::forward_iterator_tag) at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.tcc:236
0x400e8d4c: std::function<void (std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >, 
void*)>::operator()(std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >, void*) const at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/functional:2271
0x400e8fe8: std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >::_M_data() const at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:135
  (inlined by) std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >::_M_is_local() const at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:170
  (inlined by) std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >::_M_dispose() at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:179
  (inlined by) std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >::~basic_string() at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:544
  (inlined by) OvmsEvents::SignalEvent(std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >, void*) at 
/vagrant/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_events.cpp:155
0x400eaeb6: std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >::_M_data() const at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:135
  (inlined by) std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >::_M_is_local() const at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:170
  (inlined by) std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >::_M_dispose() at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:179
  (inlined by) std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >::~basic_string() at 
/home/ubuntu/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:544
  (inlined by) Housekeeping::Ticker1() at 
/vagrant/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_housekeeping.cpp:223
0x400eb07b: HousekeepingTicker1(void*) at 
/vagrant/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_housekeeping.cpp:70
0x400eb07b: HousekeepingTicker1(void*) at 
/vagrant/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_housekeeping.cpp:70
0x4008d7c9: prvProcessExpiredTimer at 
/home/ubuntu/esp/esp-idf/components/freertos/./timers.c:484
0x40081f10: esp_crosscore_int_send at 
/home/ubuntu/esp/esp-idf/components/esp32/./crosscore_int.c:103
0x4008d818: prvProcessTimerOrBlockTask at 
/home/ubuntu/esp/esp-idf/components/freertos/./timers.c:484
0x40081f7e: esp_crosscore_int_send_yield at 
/home/ubuntu/esp/esp-idf/components/esp32/./crosscore_int.c:112
0x4008d7fc: prvProcessTimerOrBlockTask at 
/home/ubuntu/esp/esp-idf/components/freertos/./timers.c:484
0x4008d90b: prvTimerTask at 
/home/ubuntu/esp/esp-idf/components/freertos/./timers.c:484

Blk tiT
$ ~/esp/xtensa-esp32-elf/bin/xtensa-esp32-elf-addr2line -pfiaC -e 
build/ovms3.elf 0x401e52d0  0x4008b981  0x400eec76  0x401cbf90 
0x401cb450  0x4012b7ec  0x4020118e  0x401e0672  0x401e53e1 0x4008b981  
0x402011b6  0x401e7654  0x401e2920  0x401e3ea2 0x401d71a8  0x401cbdaa
0x401e52d0: sys_arch_sem_wait at 
/home/ubuntu/esp/esp-idf/components/lwip/port/freertos/sys_arch.c:548
0x4008b981: xQueueGenericReceive at 
/home/ubuntu/esp/esp-idf/components/freertos/./queue.c:2037
0x400eec76: OvmsCommandApp::Log(char const*, __va_list_tag) at 
/vagrant/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_command.cpp:94
0x401cbf90: tcpip_api_call at 
/home/ubuntu/esp/esp-idf/components/lwip/api/tcpip.c:474
0x401cb450: pppapi_connect at 
/home/ubuntu/esp/esp-idf/components/lwip/api/pppapi.c:266
0x4012b7ec: GsmPPPOS_StatusCallback(ppp_pcb_s*, int, void*) at 
/vagrant/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/simcom/src/gsmpppos.cpp:149
0x4020118e: ppp_link_end at 
/home/ubuntu/esp/esp-idf/components/lwip/netif/ppp/ppp.c:704
0x401e0672: pppos_disconnect at 
/home/ubuntu/esp/esp-idf/components/lwip/netif/ppp/pppos.c:410
0x401e53e1: sys_arch_mbox_fetch at 
/home/ubuntu/esp/esp-idf/components/lwip/port/freertos/sys_arch.c:548
0x4008b981: xQueueGenericReceive at 
/home/ubuntu/esp/esp-idf/components/freertos/./queue.c:2037
0x402011b6: ppp_link_terminated at 
/home/ubuntu/esp/esp-idf/components/lwip/netif/ppp/ppp.c:704
0x401e7654: link_terminated at 
/home/ubuntu/esp/esp-idf/components/lwip/netif/ppp/auth.c:643
0x401e2920: lcp_finished at 
/home/ubuntu/esp/esp-idf/components/lwip/netif/ppp/lcp.c:2365
0x401e3ea2: fsm_timeout at 
/home/ubuntu/esp/esp-idf/components/lwip/netif/ppp/fsm.c:279
0x401d71a8: sys_timeouts_mbox_fetch at 
/home/ubuntu/esp/esp-idf/components/lwip/core/timers.c:575
0x401cbdaa: tcpip_thread at 
/home/ubuntu/esp/esp-idf/components/lwip/api/tcpip.c:474




More information about the OvmsDev mailing list