Hi Mark,
Cleaned the build stuff, leaving sdkconfig as it is, and there was no change in the crash or line #.
Changed sdkconfig and re-cleaned and built, and now the crash is gone.
So, which of the sdkconfig changes did it? Which would you like reverted?
Greg
Clear CONFIG_FATFS_PER_FILE_CACHE (save memory)CONFIG_FREERTOS_USE_TRACE_FACILITY=y (needed for module memory command)CONFIG_HEAP_POISONING_LIGHT=y (needed for module memory command)CONFIG_HEAP_TASK_TRACKING=y (needed for module task command)
Guru Meditation Error: Core 1 panic'ed (LoadProhibited). Exception was unhandled.Register dump:PC : 0x4012892a PS : 0x00060e30 A0 : 0x80152a97 A1 : 0x3ffdb8100x4012892a: OvmsMetrics::DeregisterListener(char const*) at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_metrics.cpp:327OvmsMetrics::DeregisterListener (this=0x3ffb7140 <MyMetrics>, caller=0x3f418acc "ovms-server-v2")at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_metrics.cpp:327327 if (ec->m_caller == caller)(gdb) bt#0 OvmsMetrics::DeregisterListener (this=0x3ffb7140 <MyMetrics>, caller=0x3f418acc "ovms-server-v2")at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_metrics.cpp:327#1 0x40152a97 in OvmsServerV2::~OvmsServerV2 (this=0x3ffe2974, __in_chrg=<optimized out>)at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/ovms_server_v2/src/ovms_server_v2.cpp:1616#2 0x40152b39 in OvmsServerV2::~OvmsServerV2 (this=0x3ffe2974, __in_chrg=<optimized out>)at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/ovms_server_v2/src/ovms_server_v2.cpp:1625#3 0x4015206e in ovmsv2_stop (verbosity=65535, writer=<optimized out>, cmd=0x3ffc5894, argc=0, argv=0x0)at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/ovms_server_v2/src/ovms_server_v2.cpp:1659#4 0x40122af1 in OvmsCommand::Execute (this=0x3ffc5894, verbosity=65535, writer=0x3ffd8638, argc=0, argv=0x0)at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_command.cpp:268#5 0x40122be4 in OvmsCommand::Execute (this=0x3ffc57ac, verbosity=65535, writer=0x3ffd8638, argc=1, argv=0x3ffdb9c8)at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_command.cpp:313#6 0x40122bd6 in OvmsCommand::Execute (this=0x3ffc5738, verbosity=65535, writer=0x3ffd8638, argc=2, argv=0x3ffdb9c8)at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_command.cpp:309#7 0x40122bd6 in OvmsCommand::Execute (this=0x3ffb7068 <MyCommandApp+4>, verbosity=65535, writer=0x3ffd8638, argc=3, argv=0x3ffdb9c4)at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_command.cpp:309#8 0x40122c0c in OvmsCommandApp::Execute (this=0x3ffb7064 <MyCommandApp>, verbosity=65535, writer=0x3ffd8638, argc=3, argv=0x3ffdb9c0)at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_command.cpp:641#9 0x4012be0b in Execute (rl=0x3ffd864c, argc=3, argv=0x3ffdb9c0) at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_shell.cpp:47#10 0x4012ddec in new_line_handler (pThis=0x3ffd864c) at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/microrl/./microrl.c:620#11 0x4012de53 in microrl_insert_char (pThis=0x3ffd864c, ch=10) at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/microrl/./microrl.c:668#12 0x4012be82 in OvmsShell::ProcessChar (this=0x3ffd8638, c=<optimized out>) at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_shell.cpp:70#13 0x4012be99 in OvmsShell::ProcessChars (this=0x3ffd8638,buf=0x3ffd8df9 "pAt\300\363\266\330X\312Nz\273\350\210Z6\263\317\061uu)\av\251\312\336;\215\324\025\271\032y!Ņ\220\060\325A\255\317Lz\365\204\f2O[\263\336r\300\235\214V\365\352\341\235}\037\212\366\350i1_\034遽͎\326h<\246\025\301\b\367\313\\Y\005Ź\300r6\217\213G`\030\364Ax$\n\242\255\v\211\365\071~\350\315\324[/\316\367+\227\226=\332\f\343\020\001\221\325p\375\v\375\231)\353ְ\027yu\260\037W3x\020\060/V\374\355\004Y[\273\316SU\205\265\366/\001\323?\307\353\\ \237\211\260ğЃ84E \032\274\303q3F+\353\343\346\324\327\027\"Enk\002\206", <incomplete sequence \371>..., len=1)at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_shell.cpp:77#14 0x40120f54 in ConsoleAsync::HandleDeviceEvent (this=0x3ffd8638, pEvent=<optimized out>) at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./console_async.cpp:169#15 0x40125754 in OvmsConsole::Poll (this=0x3ffd8638, ticks=4294967295, queue=0x3ffd94b0) at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_console.cpp:150#16 0x4012594c in OvmsConsole::Service (this=0x3ffd8638) at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_console.cpp:130#17 0x40120df8 in ConsoleAsync::Service (this=0x3ffd8638) at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./console_async.cpp:80#18 0x40120e07 in non-virtual thunk to ConsoleAsync::Service() ()#19 0x4012cc80 in TaskBase::Task (object=0x3ffd8de4) at /Users/mark/Documents/ovms/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./task_base.cpp:156(gdb) p ec$1 = (MetricCallbackEntry *) 0xe3ffe32(gdb) p *ec$2 = {_vptr$MetricCallbackEntry = 0xffffffff, m_caller = 0xffffffff '\377' <repeats 200 times>...,m_callback = {<std::_Maybe_unary_or_binary_function<void, OvmsMetric*>> = {<std::unary_function<OvmsMetric*, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 8, static _M_max_align = 4, _M_functor = {_M_unused = {_M_object = 0xffffffff, _M_const_object = 0xffffffff, _M_function_pointer = 0xffffffff,_M_member_pointer = &virtual table offset -2, this adjustment -1}, _M_pod_data = "\377\377\377\377\377\377\377\377"}, _M_manager = 0xffffffff}, _M_invoker = 0xffffffff}}(gdb) p *ml$3 = {<std::__cxx11::_List_base<MetricCallbackEntry*, std::allocator<MetricCallbackEntry*> >> = {_M_impl = {<std::allocator<std::_List_node<MetricCallbackEntry*> >> = {<__gnu_cxx::new_allocator<std::_List_node<MetricCallbackEntry*> >> = {<No data fields>}, <No data fields>},_M_node = {<std::__detail::_List_node_base> = {_M_next = 0x3ffe3fd4, _M_prev = 0x3ffe3fd4}, _M_data = 0}}}, <No data fields>}
On 31 Jan 2018, at 1:38 PM, Greg D. <gregd2350@gmail.com> wrote:Sent direct.
Greg
Mark Webb-Johnson wrote:Something weird going on here:0x401222ee: OvmsMetrics::DeregisterListener(char const*) atMy line 299 of ovms_metrics.cpp is the ending curly brace on OvmsMetrics::InitFloat. A good 20+ lines above DeregisterListener (which starts at line 319).
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_metrics.cpp:299
Can you send me your ovms_metrics.cpp and sdkconfig?
Regards, Mark.On 31 Jan 2018, at 1:20 PM, Greg D. <gregd2350@gmail.com> wrote:_______________________________________________
Crashes here, without fail (2 out of 2 tries). Latest bits from
Master. I had log level set to verbose.
Greg
OVMS > server v2 status
OVMS V2 login successful, and crypto channel established
OVMS > server v2 stop
Stopping OVMS Server V2 connection (oscv2)
Guru Meditation Error: Core 1 panic'ed (LoadProhibited)
. Exception was unhandled.
Register dump:
PC : 0x401222ee PS : 0x00060830 A0 : 0x8014dac3
A1 : 0x3ffdf310
0x401222ee: OvmsMetrics::DeregisterListener(char const*) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_metrics.cpp:299
A2 : 0x3ffe9474 A3 : 0x3f417638 A4 : 0x3ffe3fe8
A5 : 0x951ac700
A6 : 0x3ffe88ec A7 : 0x3ffe88ec A8 : 0x80122305
A9 : 0x3ffdf2f0
A10 : 0x3ffe92bc A11 : 0x3ffe92e8 A12 : 0x3ffdf330
A13 : 0x3ffae8d8
A14 : 0x00000000 A15 : 0x00000000 SAR : 0x00000008
EXCCAUSE: 0x0000001c
EXCVADDR: 0x951ac704 LBEG : 0x400014fd LEND : 0x4000150d
LCOUNT : 0xfffffff5
Backtrace: 0x401222ee:0x3ffdf310 0x4014dac0:0x3ffdf340
0x4014db62:0x3ffdf380 0x4014d0df:0x3ffdf3a0 0x401273d6:0x3ffdf3c0
0x401274c9:0x3ffdf3f0 0x401274bb:0x3ffdf420 0x401274bb:0x3ffdf450
0x401274f1:0x3ffdf480 0x4011e894:0x3ffdf4a0 0x40129af5:0x3ffdf4c0
0x40129b5c:0x3ffdf520 0x4011e90b:0x3ffdf560 0x4011e922:0x3ffdf580
0x40128855:0x3ffdf5a0 0x40124ac5:0x3ffdf5d0 0x40124cbd:0x3ffdf600
0x401286fd:0x3ffdf620 0x4012870c:0x3ffdf640 0x4011ddbd:0x3ffdf660
0x401222ee: OvmsMetrics::DeregisterListener(char const*) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_metrics.cpp:299
0x4014dac0: OvmsServerV2::~OvmsServerV2() at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/ovms_server_v2/src/ovms_server_v2.cpp:1616
0x4014db62: OvmsServerV2::~OvmsServerV2() at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/ovms_server_v2/src/ovms_server_v2.cpp:1625
0x4014d0df: ovmsv2_stop(int, OvmsWriter*, OvmsCommand*, int, char const*
const*) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/ovms_server_v2/src/ovms_server_v2.cpp:1659
(discriminator 1)
0x401273d6: OvmsCommand::Execute(int, OvmsWriter*, int, char const*
const*) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_command.cpp:83
0x401274c9: OvmsCommand::Execute(int, OvmsWriter*, int, char const*
const*) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_command.cpp:83
0x401274bb: OvmsCommand::Execute(int, OvmsWriter*, int, char const*
const*) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_command.cpp:83
0x401274bb: OvmsCommand::Execute(int, OvmsWriter*, int, char const*
const*) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_command.cpp:83
0x401274f1: OvmsCommandApp::Execute(int, OvmsWriter*, int, char const*
const*) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_command.cpp:83
0x4011e894: Execute(microrl*, int, char const* const*) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_shell.cpp:47
0x40129af5: new_line_handler at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/microrl/./microrl.c:620
0x40129b5c: microrl_insert_char at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/microrl/./microrl.c:668
0x4011e90b: OvmsShell::ProcessChar(char) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_shell.cpp:70
0x4011e922: OvmsShell::ProcessChars(char const*, int) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_shell.cpp:77
(discriminator 2)
0x40128855: ConsoleAsync::HandleDeviceEvent(void*) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./console_async.cpp:169
0x40124ac5: OvmsConsole::Poll(unsigned int, void*) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_console.cpp:150
0x40124cbd: OvmsConsole::Service() at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./ovms_console.cpp:130
(discriminator 1)
0x401286fd: ConsoleAsync::Service() at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./console_async.cpp:80
0x4012870c: non-virtual thunk to ConsoleAsync::Service() at ??:?
0x4011ddbd: TaskBase::Task(void*) at
/home/greg/greg/ovms/Open-Vehicle-Monitoring-System-3-master/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/main/./task_base.cpp:156
Rebooting...
Mark Webb-Johnson wrote:_______________________________________________Stopping the v2 server causes a panic even when it has connectedTrying to repeat this, but can’t. Here is what I get:
right after boot. The below stack trace is from current master.
Looking at the code where it panics, it seems like the
MetricCallbackList is corrupted somehow.
OvmsDev mailing list
OvmsDev@lists.teslaclub.hk
http://lists.teslaclub.hk/mailman/listinfo/ovmsdev
OvmsDev mailing list
OvmsDev@lists.teslaclub.hk
http://lists.teslaclub.hk/mailman/listinfo/ovmsdev
_______________________________________________
OvmsDev mailing list
OvmsDev@lists.teslaclub.hk
http://lists.teslaclub.hk/mailman/listinfo/ovmsdev