vTaskDelay
-
- Posts: 1
- Joined: Wed Oct 31, 2018 6:33 am
vTaskDelay
While runnning a long time my code return err like this:
I (59000931) DSP: Wakeup Waiting...
/home/xhtan/XFAI211/task/esp-idf/components/freertos/tasks.c:1443 (vTaskDelay)- assert failed!
abort() was called at PC 0x4008e3af on core 1
Backtrace: 0x40090ed7:0x3ffdcc30 0x4009102f:0x3ffdcc50 0x4008e3af:0x3ffdcc70 0x400d6cb5:0x3ffdcc90
Entering gdb stub now.
But ,I do not know why ?
I (59000931) DSP: Wakeup Waiting...
/home/xhtan/XFAI211/task/esp-idf/components/freertos/tasks.c:1443 (vTaskDelay)- assert failed!
abort() was called at PC 0x4008e3af on core 1
Backtrace: 0x40090ed7:0x3ffdcc30 0x4009102f:0x3ffdcc50 0x4008e3af:0x3ffdcc70 0x400d6cb5:0x3ffdcc90
Entering gdb stub now.
But ,I do not know why ?
Re: vTaskDelay
vTaskDelay() cannot be called whilst the scheduler is disabled (i.e. in between calls of vTaskSuspendAll() and vTaskResumeAll()). The assertion failure you see is vTaskDelay() checking if it was called whilst the scheduler is disabled.
Re: vTaskDelay
Hi @Esp_dazz,
I'm facing same assertion issue. I don't use vtasksuspendall but it happens time to time (no deterministic reason).
I have raised issue also on github but I didn't get any result.
In your opinion is there other reason which trigger that assertion?
For example: too many task waiting the scheduler?
How can i debug it?specific log level to be activated?
Thanks
I'm facing same assertion issue. I don't use vtasksuspendall but it happens time to time (no deterministic reason).
I have raised issue also on github but I didn't get any result.
In your opinion is there other reason which trigger that assertion?
For example: too many task waiting the scheduler?
How can i debug it?specific log level to be activated?
Thanks
Re: vTaskDelay
Generally, scheduler suspension is supposed to guarantee that a task on a particular core runs without being preempted. And because preemption is not disabled, FreeRTOS prohibits any blocking function from being called within that whilst the scheduler is suspended (i.e. Task delays or Queue send/receives with a tick timeout > 0).
There are a few places in ESP-IDF that use scheduler suspension (e.g. SPI Flash, FreeRTOS Event Groups etc), so if your application isn't calling vTaskSuspendAll(), it might be possible that some of the libraries that you're using are doing so internally.
Please provide a back trace and the link to the github issue. Thanks!
There are a few places in ESP-IDF that use scheduler suspension (e.g. SPI Flash, FreeRTOS Event Groups etc), so if your application isn't calling vTaskSuspendAll(), it might be possible that some of the libraries that you're using are doing so internally.
Please provide a back trace and the link to the github issue. Thanks!
Re: vTaskDelay
Hello @ESP_Dazz
This is link to github issue:
https://github.com/espressif/esp-idf/issues/391
It's quite "old" (1st october 2018) but I still see time to time using also v3.1.1. There you can find some backtrace
As written on github I have a task with only "20ms" of vTaskDelay.
Could it be the cause?
Thanks
This is link to github issue:
https://github.com/espressif/esp-idf/issues/391
It's quite "old" (1st october 2018) but I still see time to time using also v3.1.1. There you can find some backtrace
As written on github I have a task with only "20ms" of vTaskDelay.
Could it be the cause?
Thanks
Re: vTaskDelay
Hi @davdav
I don't source of the problem is due to the delay duration or the number of tasks. If your application doesn't call vTaskSuspendAll(), I see two possibilities that can cause this issue.
1) Bug with IDF functions that internally call vTaskSuspendAll()
The assert in vTaskDelay() checks to see if the uxSchedulerSuspended of the current core is set. The only functions that change uxSchedulerSuspended are vTaskSuspendAll() and xTaskResumeAll(). If your application code does not call vTaskSuspendAll() directly, the only other possibility is that some other IDF function that internally calls vTaskSuspendAll() is being called in some way by your application.
The current places where vTaskSuspendAll() is used are as follows
- FreeRTOS Event Groups
- FreeRTOS Timer Service Task (Daemon Task)
- Multiple SPI Flash functions that internally call spi_flash_disable_interrupts_caches_and_other_cpu()
- esp_restart()
When a function calls vTaskSuspendAll(), the calling function is not supposed to yield or be preempted until it calls xTaskResumeAll(). Therefore, I don't see how a function could have called vTaskSuspendAll() and then some how manage to switch context to your application task which callsvTaskDelay(), unless there's a bug in scheduling.
It'll be helpful if you could check if any of your application tasks use the features listed above. A description of what your tasks are doing, their priorities and core affinities, and your application's SDK config would also be helpful.
2) Memory corruption that overwrites uxSchedulerSuspended[portNUM_PROCESSORS]
It could be possible that uxSchedulerSuspended is overwritten due to memory corruption. But finding the source of memory corruption could be difficult. I suggest you either use JTAG or software to set a watchpoint on uxSchedulerSuspended (see Heap Memory Debugging)
I don't source of the problem is due to the delay duration or the number of tasks. If your application doesn't call vTaskSuspendAll(), I see two possibilities that can cause this issue.
1) Bug with IDF functions that internally call vTaskSuspendAll()
The assert in vTaskDelay() checks to see if the uxSchedulerSuspended of the current core is set. The only functions that change uxSchedulerSuspended are vTaskSuspendAll() and xTaskResumeAll(). If your application code does not call vTaskSuspendAll() directly, the only other possibility is that some other IDF function that internally calls vTaskSuspendAll() is being called in some way by your application.
The current places where vTaskSuspendAll() is used are as follows
- FreeRTOS Event Groups
- FreeRTOS Timer Service Task (Daemon Task)
- Multiple SPI Flash functions that internally call spi_flash_disable_interrupts_caches_and_other_cpu()
- esp_restart()
When a function calls vTaskSuspendAll(), the calling function is not supposed to yield or be preempted until it calls xTaskResumeAll(). Therefore, I don't see how a function could have called vTaskSuspendAll() and then some how manage to switch context to your application task which callsvTaskDelay(), unless there's a bug in scheduling.
It'll be helpful if you could check if any of your application tasks use the features listed above. A description of what your tasks are doing, their priorities and core affinities, and your application's SDK config would also be helpful.
2) Memory corruption that overwrites uxSchedulerSuspended[portNUM_PROCESSORS]
It could be possible that uxSchedulerSuspended is overwritten due to memory corruption. But finding the source of memory corruption could be difficult. I suggest you either use JTAG or software to set a watchpoint on uxSchedulerSuspended (see Heap Memory Debugging)
Re: vTaskDelay
Hello ESP_Dazz,
Thank you for reply. I have just got a crash related to vTaskDelay
and I have save coredump file. The crash is at same assert fail in tasks.c file
If I run the espcoredump python I get
If you need to investigate I can PM the .elf file and coredump file.
However I will try to investigate if it could be related to memory leak because I use heap in my application.
Thanks
Thank you for reply. I have just got a crash related to vTaskDelay
and I have save coredump file. The crash is at same assert fail in tasks.c file
Code: Select all
C:/msys32/home/Davide/esp/esp-idf/components/freertos/tasks.c:1443 (vTaskDelay)- assert failed!
abort() was called at PC 0x40092007 on core 1
Backtrace: 0x4009580b:0x3ffd80e0 0x40095963:0x3ffd8100 0x40092007:0x3ffd8120 0x400ebcb5:0x3ffd8140
I (7041) esp_core_dump: Press Enter to print core dump to UART...
I (8047) esp_core_dump: Print core dump to uart...
================= CORE DUMP START =================
YE0AABMAAABkAQAA
jPn8PxD4/D90+fw/
EPj8PxD5/D/CNRoAcEz8P3BM/D+M+fw/aEz8PwEAAAA49fw/OPX8P4z5/D8AAAAA
GAAAAHj1/D9pcGMwAM7OAAAAAAB0+fw/AAAAACAJBgACAAAAzs7OzhgAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQLw4CEAwCQYAsBwIgND4/D8AAAAAAQAAAPD0/D8AAAAAAQAAAAAAAACMUPw/
AAAAAAEAAABIAgATABH8PxgAAAAAEfw/AgAAAAAAAABsovo/AAAAAAAAAAAAAAAA
AAAAAPUjCEAYAAAAeDYJQGyi+j8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAABimSMAAAAAAAAAAAAAAAAA8Pj8PwxJ/D/8SPw/
8PT8PwAAAAABAAAAAAAAAAAAAAAQ+fw/AAAAAAAAAACYOAhAAAAAAAAAAAAAAAAA
BxIIgDA8/j/sSfw/9En8PwAAAAAAAAAAHPn8PwAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAA=
6IH9PyCA/T/Qgf0/
UH/9P3CB/T9imSMAWEv8P1hL/D/ogf0/UEv8Pw8AAADOzs7Ozs7OzuiB/T8AAAAA
CgAAAPh7/T9JX3JlYWQAAP///3/Qgf0/AAAAACEABgANAAAAzs7OzgoAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
MYEAgAtYCUAwCAYAZlkJgOCA/T8vAAAALwAAAAwAAAD/////AAAAAP7///8AAAAA
wID9PwAAAABxgP0/H4D9PzEAAAAAAAAAIoD9PwQAAAAdAAAAAAAAACjEAEAtxABA
AAAAAB+A/T8xAAAAoCEIQMwq+z8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAcYD9PwAAAAAKIAmAAIH9P2AAAABgAAAA
CAAAAP////8AAAAA/////7i8DoAggf0/CgAAAAAAAAAQAAAA/////wAAAAD1////
AAAAAECB/T+Yrvw/BgAAAAEAAAAAAAAACQAAAAAAAAAAAAAAcIH9PwAAAAAAAAAA
AQEBAQEBAQEBAQEBAAAAAEyB/T8krUA/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAB8gf0/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+K79P2Ci/T/grv0/
YKL9P4Cu/T9KmSMAREv8P0RL/D/4rv0/PEv8PxAAAADM9Pw/zPT8P/iu/T8AAAAA
CQAAAOSW/T9jVHNrAM7OAP///3/grv0/AAAAACEABgAQAAAAzs7OzgkAAAAEAAAA
AAAAAAAAAAACAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQFQ0CUAwBAYAEUcNgCCj/T+g9Pw/AAAAAPD0/D8AAAAAoPT8PwAAAABUNAmA
AKP9PwEAAAD/////gEz8PwEAAAAAEfw//////yAAAAABAAAAq6sAAODCAED2wgBA
AAAAAPUjCEABAAAAeDYJQNxX+z8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAANxX+z8AAAAAAAAAAAAAAACqRw2AYKP9PwhJ/D8AAAAA
AAAAAGKZIwAAAAAAAAAAAP////8AAAAAAAAAAAQg9D+8JQmAYKP9P/iu/T8AAAAA
TjkIgICj/T8AAAAAmDgIQAAAAAAUSfw/ANAHAAAAAABBMgiAoKP9PwAAAAABAAAA
AAAAABQAAAAAAAAAAKX9Px81CIDAo/0/AAAAACBK/T+NUPw/AAAAAAAABAAAIPQ/
4JEQgOCj/T8AAAAA+Eb9PwAAAAAAAAAAAAAAAP/////BnhCAQKT9P0g6/T8A0AcA
/CEIQPXaEEAwBAYAdLEQgKCk/T9ITP0/AAAAANBG/T8AAAAAAAEAAAABAAAAwDEA
IEn9PwABAAAAAQAAAAEAAAABAAAPAAAAAABAAADQMQAk2xCAcKT9P1hF/T8A0AcA
AAAAAPUjCEAAAAAAeDYJQPhG/T8AAQAA0Eb9P+RG/T90sRCAoKT9P0hM/T8AAAAA
AAAAAAAAAAAAAAAAAAAAAAABAAD4Rv0/sJ4QQP////9NxhCA0KT9P0hM/T99AAAA
5Eb9P9Ck/T8AAAAAHEL9P9BG/T8A0AcAAAEAADRL/T+EoxCAIKX9P0hM/T8Cp/0/
gAAAAAAAAAD8AgAAAAAAAPsCAAB4rhBAAAAAADRL/T8AAAAAUEv9PwAAAAAAAAAA
AAAAAADQBwAA0AcAAAAAAFObEIBgpf0/BAAAAAKn/T8Cp/0/AAAAADSl/T8wpf0/
DgAAAHwAAAAEAAAAAAAAAGal/T+tcwfNAAD/AAAAAP+w7BCAoKX9P1hF/T8Cp/0/
LEb9PwEAAADNzQAAAAAA/x0eAICgpf0/rOD6PwAAAAAWAAAAtgEAABUDCSBITP0/
ar0AgMCl/T9gr/0/9JoQQAEGAAC2AQAAAKf9PwIAAACFdg+A4KX9P2Cv/T8Ap/0/
AQYAALYBAAD8AP0/AAAAABR3D4AApv0/YK/9PwCn/T8BBgAAtgEAAHcAAAArAAAA
8eENgDCm/T8Ap/0/SatAPwEGAAAAAAAAAAAAAGaZIwAQ4Pw/CAAAAAEAAAAAAAAA
yZYOgFCm/T/5LUA/YKb9P9ZoQD/MTfw/AAAAAPhM/D8AAAAAUKj9PwIVQj8VBFgA
AAAAAPwAAAA4AjkCGEL9PwEAAAAzAgAABgAAADICADY0ODgwGIdAPwEAAABzpv0/
AQAAAAAAAABUP/0/GEL9P3hWrbrApv0/LET9PygBAAD/////AAAAAAYAAABUP/0/
AAAAAHSm/T8AAAAAAAAAAAAAAAAAAAAALET9Pw10o3P8////AAAAAAAAAAAFAAAA
/CEAQClWCUAwAwYAplUJgACo/T/Qp/0/KAAAAHym/T8vVS9VVC8rMzkzNDAxMDE0
NjU4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACszOTM0
MDEwMTQ2NTgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAANqp/D/cqfw/6qn8P+6p/D/yqfw/9Kn8P/ap/D/4qfw/AAD/AAAAAP9AIAmA
EKj9PwAAAABKmSMAZGF2AAAAAAAAAAAAAAAAAAAAAAAAAAEADQADAAMAAQABAAEA
AAAAAPUjCEB0Tfw/eDZncjEAAAAAAAAqAAAAAAAAACoAAAAAKgAAAAAAAAAAAAAA
AAAAAAEACgBUAAAAVpkjAAMAAAADAAAA76f9P+en/T8AAAAADNn7PwAAAAC0Tvw/
+S1AP0mrQD8AAAAAAAAAAAAAAACArv0/AAAAAAAAAAAAAAAA1Kn8P6WlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaVhdCtjZnVuYXNkDQAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaX8IQhAxHwOQDAABQAAAAAA
gK79PwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
3Ff7PwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVpkjAEEAAAAAAAAA
AAAAAEUAAADUqfw/AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIyu/T8AAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
lCP9PwAi/T98I/0/
ACL9PxAj/T/Ozs7OKCv9P5BK/D+UI/0/iEr8PxkAAADOzs7Ozs7OzpQj/T8AAAAA
AAAAAIAd/T9JRExFAM7OAAAAAAB8I/0/AAAAACEABgAGAAAAzs7OzgAAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQMohGUAwCwYAXCIJgMAi/T8gAAAAAAAAAGBJ/D8AEfw/fEz8PyRK/D98Sfw/
oCL9PwAAAAD///9/wC0JgECK/j8DAAAAIwAGAAAAAADALQmAkPf8P2zEAEB3xABA
//////UjCEBAiv4/eDYJQGzM+j8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAMAtCYBAiv4/AwAAACMABgAAAAAA4CL9PwAAAAAAAAAA
YEn8PwAR/D98TPw/JEr8PwAAAAAQI/0/AAAAAAAAAAAAEfw/AAAAAAAAAAAAAAAA
AQAAAAAAAAAEAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwj/T8AAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
ICv9P5Ap/T8IK/0/
kCn9P6Aq/T/Ozs7OkEr8P5wj/T8gK/0/iEr8PxkAAADOzs7Ozs7OziAr/T8AAAAA
AAAAAAwl/T9JRExFAM7OAAEAAAAIK/0/AAAAACEABgAHAAAAzs7OzgAAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQMohGUAwBAYAXCIJgFAq/T8gAAAAIAAAAGBJ/D8AEfw/gEz8PyRK/D+cSfw/
MCr9PwAAAAD///9/wC0JgFAp/T8DAAAAIwAGAAAAAAAAAAAAAQAAAGzEAEB3xABA
//////UjCEBQKf0/eDYJQPzT+j8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAMAtCYBQKf0/AwAAACMABgAAAAAAcCr9PwAAAAABAAAA
YEn8PwAR/D+ATPw/JEr8PwAAAACgKv0/AAAAAAAAAAAAEfw/AAAAAAAAAAAAAAAA
AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKwq/T8AAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
hMT9P6DC/T9sxP0/
oML9PwDE/T9umSMAEBz9P8An/j+ExP0/dEr8PxIAAADM9Pw/zPT8P4TE/T8AAAAA
BwAAAHCw/T9yVHNrAM7OAP///39sxP0/AAAAACEABgARAAAAzs7OzgcAAAAAAAAA
AAAAAAAAAAAFAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQEAgCUAwBAYAiXMNgGDD/T9umSMAgEz8PwAR/D8BAAAAAQAAAAAAAABAIAmA
QMP9PwEAAABumSMAAQAAAMInQD8BAAAAAAAAACAAAAAAAAAAAAAAAGzEAEB3xABA
//////UjCEDCJ0A/eDYJQFxt+z8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAgMP9PwAAAAAMTvw/
9TlAP+RN/D8AAAAA+Ez8PwAAAAAAxP0/AAAAAAAAAACgDgAAEwAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcbfs/AAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzAAAAFE78Pw1O/D8zAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMT9PwAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
CBz9PwAZ/T/wG/0/
ABn9P5Ab/T+BmSMAONT7P4zE/T8IHP0/dEr8PxgAAADM9Pw/zPT8Pwgc/T8AAAAA
AQAAAPQF/T9tYWluAM7OAAAAAADwG/0/AAAAACEABgAFAAAAzs7OzgEAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQEAgCUAwAwYA+l8NgMAZ/T+BmSMAfEz8PwAR/D8AAAAAAAAAAAAAAABAIAmA
oBn9PwAAAACBmSMAAAAAAAj3/T87AAAAIwAGAAwAAADAGf0/lTojAAkWAEANFgBA
AAAAAPUjCEAI9/0/eDYJQOzE+j8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAP//P7MAAAAAAAAAABwJAAAPOA2A4Bn9PwEAAAAAAAAA
/JP8P/cWCQAcCQAAAAAAAAAAAABwG/0/AAAAAAAAAAD///9/NAkAAAoAAACcAAAA
MAAAAKWlpaWlpaWlpaWlpdcAAABsOkF2aW9yIDI5MDAuQ00uMkINCkZpcm13YXJl
OjAxLjA1DQpEb1A6MjAxOC8xMS8wNw0KTUFDOjMwLWFlLWE0LTBhLTljLTMwDQoA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEF2aW9yIDI5
MDAuQ00uMkIAMjAxOC8xMS8wNwA0NzU5L0NvbnRyaXZlAAAAAAAAAAAAAAAAAP0/
AQAAAAEAAACQAQAAMzNTQLiDE0CMhRNAHIgTQEyCE0AcjBNAGIUTQAyJE0AkiRNA
AAAAAADCAQADAAAAAAAAAAEAAAAAAAAAegAAAE2WQD8lLkA/AwAAAAEAAAABAAAA
AgAAAAAAAAAMAAAA/////wEAAAAwrqQKnDD9PwAAAAAAAAAAAQAKAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAPyV/D8Uh/w/VQAAAPyO/D8AAAAAkBv9PwAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJwb/T8AAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
MNT7P1Ay+z+MN/s/
UDL7PyA3+z+NmSMARNv9PxAc/T8w1Ps/dEr8Pw4AAABswvs/bML7PzDU+z9kwvs/
CwAAAJAn+z9VYXV4VHNrAP///3+MN/s/AAAAACEABgAXAAAAzs7OzgsAAAABAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQFQ0CUAwCgYAqkMJgBAz+z9Awvs/AAAAAJDC+z8AAAAAQML7PwAAAABUNAmA
8DL7PwEAAAAyAAAAgEz8PwEAAAAAEfw/AAAAAAQAAAB84Pg/AAAAAP0UAEANFQBA
//////UjCEABAAAAeDYJQHzg+D8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAA0+z/QM/s/FAAAAHwy+z+gSAmAUDP7P2TA+z+kM/s/
AAAAAFuZIwBzAAAABwAAADIAAAADAAAAAAAAAAAAAAAAAAAAAAAAACEAAAABAAAA
HMkTgJAz+z9kwPs/4DP7PwAAAAAAAAAAMNT7PwAAAAAAAAAAjZkjAAAAAAAAAAAA
AAAAAKAz+z8yAAAAAAAAAAY0DoDQM/s/1Bj8PwAAAAAyAAAA0DP7PwwAAACAAAAA
MgAAAAAAAAABAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAIDT7PwAAAACeTvw/
fOD4PwAAAAAAAAAAvzcjAMcwQD8BAAAAAAAAAAAAAADUGPw/sTX7PzIAAAAEAAAA
gAAAAAQAAADEWfw/AQAAAAAAAAAgN/s/AAAAAAAAAABkpvw/paWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
pQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaX8IQhAkDMOQDAABQAAAAAA
IDf7PwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
MDT7P7E1+z8AAAAAAAAAALwCAAAAAAAAAQAAAAAAAAA1Nvs/AAAAAAAAAAAAAAAA
jhT8P70CAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACw3+z8AAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
PNv9P5DX/T8k2/0/
kNf9P8Da/T+QmSMAwOz9PzjU+z882/0/dEr8Pw8AAADOzs7Ozs7Ozjzb/T8AAAAA
CgAAAEDH/T9TbW1UYXNrAP///38k2/0/AAAAACEABgASAAAAzs7OzgoAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQEAgCUAwAwYAFzAOgFDY/T+QmSMAfEz8PwAR/D8AAAAAAAAAAPhM/D9AIAmA
MNj9PwAAAACQmSMAwC0JgNCK/j8DAAAAIwAGAAAAAABQ2P0/AAAAAAAAAAAAAAAA
AAAAAPUjCEDQiv4/eDYJQByE+z8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAP//P7MAAAAAAAAAAAAAAAAAAAAAcNj9PwAAAAAAAAAA
ABH8PwAAAAAAAAAA+Ez8PwAAAADA2v0/AAAAAAAAAAClpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
paWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWl
/CEIQKAPDkAwAAUAAAAAAMDa/T8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAByE+z8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAADM2v0/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAA==
uOz9P4Dq/T+g7P0/
gOr9P0Ds/T+QmSMAmGv9P0Tb/T+47P0/dEr8PwcAAAB43/0/eN/9P7js/T9w3/0/
EgAAAKTg/T90aVQAzs7OAP///3+g7P0/AAAAACEABgATAAAAzs7OzhIAAAABAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQPC/AEAwBQYAeBwJgEDr/T8AAAAAIwUGACAFBgCdJEA/zc0AACMABgABAAAA
zc0AAHRK/D8KAAAAAAAAAAEAAADNzQAAlKOCZAAAAAAou/s/pN/9P2zEAEB3xABA
AAAAAPUjCEABAAAAeDYJQJyV+z8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAHhWrboAAAAAAAAAAAAAAABLNAmAUOv9P7js/T81AAAA
8ZgYgHDr/T9M3/0/EOz9P3xM/D8AAAAAABH8PwAAAAD/7ReAsOv9P6R+/D8Q7P0/
AAAAAFuZIwBkAAAAoO0XQDUAAAAAAAAAAQAAAAAAAACc3/0/AAAAAKTf/T8AAAAA
TsAXgODr/T+kfvw/EOz9P07AF4Dg6/0/pH78PxDs/T81AAAAW5kjACAAAAAgAAAA
AAAAABDs/T+Y7hdAAAAAAKDtF0Bc8UE/mO4XQAAAAADsfvw/7H78P+h+/D/ofvw/
AAAAAEDs/T8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATOz9PwAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAA==
kGv9P6Bo/T94a/0/
oGj9PxBr/T+dmSMACJX9P8Ds/T+Qa/0/dEr8Pw4AAACQXf0/kF39P5Br/T+IXf0/
CwAAANBd/T91VHNrAM7OAP///394a/0/AAAAACEABgAMAAAAzs7OzgsAAAABAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQFQ0CUAwCQYAqkMJgGBp/T9kXf0/AAAAALRd/T8AAAAAZF39PwAAAABUNAmA
QGn9PwAAAABkAAAAfEz8PwAAAAAAEfw/XP/6PxgAAAD8////AAAAAGzEAEB3xABA
AAAAAPUjCEAAAAAAeDYJQGwU+z8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAIBM/D8BAAAAABH8P1z/+j+gSAmAoGn9P4hU/T/0af0/
AAAAADmZIwCQa/0/AAAAAGQAAACgaf0/iFT9PwAAAAC0Xf0/AAAAAGRd/T8AAAAA
HMkTgOBp/T+IVP0/MGr9P4jd/D+lpaWlpaWlpaWlpaUAAAAAnZkjAAAAAAAAAAAA
AAAAAPBp/T9kAAAAAAAAAFitDYAgav0/zBj8PwAAAABkAAAAAAAAAAAAAAAABAAA
ZAAAACBq/T8mAAAABAAAAGQAAAAAAAAAAAAAAAAAAAAAAAAAcGr9P0xO/D8gcf0/
JgAAAJxN/D8AAAAA+Ez8PwAAAABwav0/TE78PyBx/T/MGPw/CG39P2QAAAAAAAAA
AAQAAAAAAADAWfw/AAAAAAAAAAAQa/0/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAGwU+z8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAht/T9/AQAAKBT8P1QAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAca/0/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAA=
AJX9PzCT/T/olP0/
MJP9P4CU/T/QmyMAfIv9P5hr/T8Alf0/dEr8Pw8AAADOzs7Ozs7OzgCV/T8AAAAA
CgAAAOyM/T9JX2FuYQDOAAAAAADolP0/AAAAACEABgAPAAAAzs7OzgoAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQEAgCUAwAwYA9MUOgPCT/T/QmyMAfEz8PwAR/D8AAAAAAAAAAPhM/D9AIAmA
0JP9PwAAAADQmyMAnPP8PwAAAAABAAAAAAAAAB8AAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAPUjCEAAAAAAeDYJQNw9+z8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAABetQD8AAAAAIK1APzcAAAAAAAAAEJT9P68DAAA3AAAA
S6tAP9xN/D8AAAAA+Ez8PwAAAACAlP0/AAAAAAAAAAC8AAAAAHCHQAAAAAAAcIdA
AAAAAACwh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACsrvw/BgAAAAAAAABshCMA
AAAAAAAAAAAUjfw/AAAAAAcAAAAbrUA/8K38P/MCAAAAAAAAAAAAAAAAAAAAAAAA
AQAAAAAAAACMlP0/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAA=
dIv9P5CJ/T9ci/0/
kIn9P/CK/T/2myMAfEr8PwiV/T90i/0/dEr8PxAAAADM9Pw/zPT8P3SL/T8AAAAA
CQAAAGCD/T9JX3RzawDOAP///39ci/0/AAAAACEABgAOAAAAzs7OzgkAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQEAgCUAwAwYANrwOgFCK/T/2myMAfEz8PwAR/D8AAAAAAAAAAPhM/D9AIAmA
MIr9PwAAAAD2myMAnPP8PwAAAAABAAAAAAAAAAQAAAAAAAAAAAAAAGzEAEB3xABA
AAAAAPUjCEAAAAAAeDYJQEw0+z8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAISpQD8GAAAAAAAAAAAAAAAAAAAAcIr9Py0AAAAGAAAA
ABH8PwEAAAAAAAAA+Ez8PwAAAADwiv0/AAAAAAAAAAADAAAAAwAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAAAAAAAAAAAAAAAA
LQAAALGY/D+xl/w/iZn8P0yY/D8AAAAAAAAAAAAAAADwrfw/cZj8PwAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/Ir9PwAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
uCf+PzCL/j/IjP4/
MIv+P2CM/j9nmSMAjMT9P3xK/D+4J/4/dEr8Pw4AAAB0J/4/dCf+P7gn/j8AAAAA
CwAAAMyE/j9pMmNfdHNrAP///3/IjP4/AAAAACEABgAWAAAAzs7OzgsAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQEAgCUAwAwYALaoNgPCL/j9nmSMAfEz8PwAR/D8AAAAAAAAAAAMAAABAIAmA
0Iv+PwAAAABnmSMA6AMAAMw+/j8AAAAAbJgjACAAAAATAAAAAAAAAGzEAEB3xABA
AAAAAPUjCEDMPv4/eDYJQLw1/D8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAOgDAADMPv4/AAAAAGyYIwAAAAAAEIz+PwEAAAAAAAAA
1QAAAOzV+z8AAAAAAwAAAAAAAABgjP4/AAAAAAAAAAAQAAAA1QAAAFUAAAAAAAAA
8gEBAFUQAAAAAAAAAAAAALGY/D8AAAAAAAAAAAAAAAAhVUA/BQAAAE8AAAAQAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbIz+PwAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
uDX9P1A0/T+gNf0/
UDT9P0A1/T8AAAAAaEr8P2hK/D+4Nf0/YEr8PxgAAADELP0/xCz9P7g1/T+8LP0/
AQAAAKQt/T9UbXIgU3ZjAAAAAACgNf0/AAAAACEABgAIAAAAzs7OzgEAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQIE7CUAwAAYAAAAAABA1/T8AAAAAAAAAAAAAAACcTPw/mEz8PwEAAACBOwmA
8DT9PwAAAAAAEfw/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAPUjCEAAAAAAeDYJQJze+j8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAJze+j8AAAAAAAAAAAAAAAAAAAAAQDX9PwAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAABMNf0/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
kB3+P7Ab/j94Hf4/
sBv+PxAd/j/Ozs7OFPH8P3z1/T+QHf4/BEr8PwIAAACc+P0/nPj9P5Ad/j+U+P0/
FwAAAHwP/j93aWZpAM7OAAAAAAB4Hf4/AAAAACEABgAVAAAAzs7OzhcAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQFQ0CUAwBQYAraAIgHAc/j9w+P0/4Bz+P8D4/T8AAAAAyPj9PwAAAABUNAmA
UBz+PwAAAAD/////fEz8PwAAAAAAEfw/AAAAACAAAAAAAAAAmG/8P+DCAED2wgBA
//////UjCEAAAAAAeDYJQGzG+z8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAPqYFICAHP4/oBj9P+Ak/D/czwiAsBz+P3D4/T/gHP4/
AAAAAJ0CAAAIH/4/vIcUQP////8AAAAAAAAAAAAAAAAKAAAAAAAAADw+DUAoiEE/
AAAAANAc/j/gJPw/7CX8P//////kJPw/FgAAAP///38AAAAAEB3+PwAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAkAAAAIH/4/AAAAAAAAAAC40fw/GQAAAA0AAAAOAQAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHB3+PwAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
DPH8P3Dv/D/08Pw/
cO/8P5Dw/D/Ozs7OjP/8P5gd/j8M8fw/BEr8PwMAAAC44Pw/uOD8Pwzx/D+w4Pw/
FgAAAPjg/D9lc3BfdGltAAAAAAD08Pw/AAAAACEABgABAAAAzs7OzhYAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQFQ0CUAwBQYAqT8NgDDw/D+M4Pw/AAAAANzg/D8AAAAAjOD8PwAAAABUNAmA
EPD8PwAAAAD/////fEz8PwAAAAAAEfw/AAAAAAAAAAAAAAAA9SMIQAAAAAAAAAAA
AAAAAPUjCEAAAAAAeDYJQOyZ+j8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAEUYCIAw8Pw/DPH8PwAAAAAAAAAAcPD8P9hI/D/gSPw/
AAAAAEdSIwAAEfw/AAAAAP////9w8Pw/AAAAAOBI/D8KAAAAAAAAACRw9D8AAAAA
AAAAAJDw/D8AAAAAAAAAAAAAAAAAAAAA4Ej8PwAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAACc8Pw/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAA==
hP/8P+D9/D9s//w/
4P38PwD//D/Ozs7ODEr8PxTx/D+E//w/BEr8PwEAAAAw+/w/MPv8P4T//D8o+/w/
GAAAAHD7/D9pcGMxAM7OAAEAAABs//w/AAAAACEABgADAAAAzs7OzhgAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQFQ0CUAwBAYAfhwIgKD+/D8E+/w/AAAAAFT7/D8AAAAABPv8PwAAAABUNAmA
gP78PwEAAAD/////gEz8PwEAAAAAEfw/IwAGAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAPUjCEABAAAAeDYJQFyo+j8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAq6sAACMABgAAAAAA4P78PxBJ/D8AAAAA
AAAAAFuZIwAAAAAAIwAGAP////8AAAAAEEn8P/xI/D/w9Pw/AAAAAAEAAAAAAAAA
AAAAAAD//D8AAAAAAAAAAJg4CEABAAAAAAAAAAAAAACcEgiAgH3+PwABAADoDQBA
AAAAAAAAAAAM//w/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAA
dPX9P7AN/j9kD/4/
sA3+PwAP/j/Ozs7OmB3+PwxK/D909f0/BEr8PwUAAAA07/0/NO/9P3T1/T8s7/0/
FAAAAGgE/j9ldmVudFRhAAAAAABkD/4/AAAAACEABgAUAAAAzs7OzhQAAAAAAAAA
AAAAAAAAAAAAAAAA2N78P0Df/D+o3/w/AAAAAAAAAAABAAAAAAAAAE2lQD8AAAAA
SB0AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAADOzs4=
/CEIQFQ0CUAwAAYAFM4TgHAO/j8I7/0/sA7+P1jv/T8AAAAAYO/9PwAAAABUNAmA
UA7+PwAAAAD/////fEz8PwAAAAAAEfw/ZPX9PwAAAAClpaWlpaWlpQAAAAAAAAAA
AAAAAPUjCEAAAAAAeDYJQFy4+z8AAAAAAAAAAAAAAAD//z+zAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAP/j8AAAAAAAAAAAAAAAAAAAAAsA7+P9hZ/D8AAAAA
AAAAAIoCAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAP/j8AAAAAAAAAAFy4+z8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAMD/4/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAA==
===================== ESP32 CORE DUMP END =====================
Code: Select all
python esp-idf/components/espcoredump/espcoredump.py info_corefile -t b64 -c coredump_vTaskDelay.dat Avior_ESP32_WiFi/build/Avior_ESP32_WiFi_v2.elf
espcoredump.py v0.1-dev
===============================================================
==================== ESP32 CORE DUMP START ====================
================== CURRENT THREAD REGISTERS ===================
pc 0x400838bc 0x400838bc <spi_flash_op_block_func+36>
lbeg 0x0 0
lend 0x0 0
lcount 0x0 0
sar 0x0 0
ps 0x60920 395552
threadptr <unavailable>
br <unavailable>
scompare1 <unavailable>
acclo <unavailable>
acchi <unavailable>
m0 <unavailable>
m1 <unavailable>
m2 <unavailable>
m3 <unavailable>
expstate <unavailable>
f64r_lo <unavailable>
f64r_hi <unavailable>
f64s <unavailable>
fcr <unavailable>
fsr <unavailable>
a0 0x40081cb0 1074273456
a1 0x3ffcf8d0 1073543376
a2 0x0 0
a3 0x1 1
a4 0x3ffcf4f0 1073542384
a5 0x0 0
a6 0x1 1
a7 0x0 0
a8 0x3ffc508c 1073500300
a9 0x0 0
a10 0x1 1
a11 0x13000248 318767688
a12 0x3ffc1100 1073484032
a13 0x18 24
a14 0x3ffc1100 1073484032
a15 0x2 2
==================== CURRENT THREAD STACK =====================
#0 0x400838bc in spi_flash_op_block_func (arg=0x0) at C:/msys32/home/Davide/esp/esp-idf/components/spi_flash/cache_utils.c:82
#1 0x40081cb0 in ipc_task (arg=<optimized out>) at C:/msys32/home/Davide/esp/esp-idf/components/esp32/ipc.c:63
======================== THREADS INFO =========================
Id Target Id Frame
19 process 18 0x40093454 in xQueueGenericReceive (xQueue=0x3ffdef08, pvBuffer=0x3ffe0eb0, xTicksToWait=4294967295, xJustPeeking=0) at C:/msys32/home/Davide/esp/esp-idf/components/freertos/queue.c:1591
18 process 17 0x40093454 in xQueueGenericReceive (xQueue=0x3ffcfb04, pvBuffer=0x0, xTicksToWait=4294967295, xJustPeeking=0) at C:/msys32/home/Davide/esp/esp-idf/components/freertos/queue.c:1591
17 process 16 0x40093454 in xQueueGenericReceive (xQueue=0x3ffce08c, pvBuffer=0x0, xTicksToWait=4294967295, xJustPeeking=0) at C:/msys32/home/Davide/esp/esp-idf/components/freertos/queue.c:1591
16 process 15 0x40093454 in xQueueGenericReceive (xQueue=0x3ffdf870, pvBuffer=0x3ffe1ce0, xTicksToWait=4294967295, xJustPeeking=0) at C:/msys32/home/Davide/esp/esp-idf/components/freertos/queue.c:1591
15 process 14 /builds/idf/crosstool-NG/.build/src/gdb-7.10/gdb/inline-frame.c:171: internal-error: inline_frame_this_id: Assertion `!frame_id_eq (*this_id, outer_frame_id)' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n) [answered Y; input not from terminal]
/builds/idf/crosstool-NG/.build/src/gdb-7.10/gdb/inline-frame.c:171: internal-error: inline_frame_this_id: Assertion `!frame_id_eq (*this_id, outer_frame_id)' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Create a core file of GDB? (y or n) [answered Y; input not from terminal]
GDB exited (None / )!
Problem occured! GDB exited, restart it.
Reading symbols from Avior_ESP32_WiFi/build/Avior_ESP32_WiFi_v2.elf...done.
[New <main task>]
[New process 1]
[New process 2]
[New process 3]
[New process 4]
[New process 5]
[New process 6]
[New process 7]
[New process 8]
[New process 9]
[New process 10]
[New process 11]
[New process 12]
[New process 13]
[New process 14]
[New process 15]
[New process 16]
[New process 17]
[New process 18]
[Current thread is 1 (<main task>)]
======================= ALL MEMORY REGIONS ========================
Name Address Size Attrs
.rtc.text 0x400c0000 0x0 RW
.rtc_noinit 0x50000000 0x0 RW
.iram0.vectors 0x40080000 0x400 R XA
.iram0.text 0x40080400 0x17c8c R XA
.dram0.data 0x3ffc0000 0x3e60 RW A
.flash.rodata 0x3f400020 0x25694 RW A
.flash.text 0x400d0018 0xc418c R XA
.coredump.tasks 0x3ffcf98c 0x164 RW
.coredump.tasks 0x3ffcf810 0x164 RW
.coredump.tasks 0x3ffd81e8 0x164 RW
.coredump.tasks 0x3ffd8020 0x1b0 RW
.coredump.tasks 0x3ffdaef8 0x164 RW
.coredump.tasks 0x3ffda260 0xc80 RW
.coredump.tasks 0x3ffd2394 0x164 RW
.coredump.tasks 0x3ffd2200 0x17c RW
.coredump.tasks 0x3ffd2b20 0x164 RW
.coredump.tasks 0x3ffd2990 0x178 RW
.coredump.tasks 0x3ffdc484 0x164 RW
.coredump.tasks 0x3ffdc2a0 0x1cc RW
.coredump.tasks 0x3ffd1c08 0x164 RW
.coredump.tasks 0x3ffd1900 0x2f0 RW
.coredump.tasks 0x3ffbd430 0x164 RW
.coredump.tasks 0x3ffb3250 0x53c RW
.coredump.tasks 0x3ffddb3c 0x164 RW
.coredump.tasks 0x3ffdd790 0x394 RW
.coredump.tasks 0x3ffdecb8 0x164 RW
.coredump.tasks 0x3ffdea80 0x220 RW
.coredump.tasks 0x3ffd6b90 0x164 RW
.coredump.tasks 0x3ffd68a0 0x2d8 RW
.coredump.tasks 0x3ffd9500 0x164 RW
.coredump.tasks 0x3ffd9330 0x1b8 RW
.coredump.tasks 0x3ffd8b74 0x164 RW
.coredump.tasks 0x3ffd8990 0x1cc RW
.coredump.tasks 0x3ffe27b8 0x164 RW
.coredump.tasks 0x3ffe8b30 0x198 RW
.coredump.tasks 0x3ffd35b8 0x164 RW
.coredump.tasks 0x3ffd3450 0x150 RW
.coredump.tasks 0x3ffe1d90 0x164 RW
.coredump.tasks 0x3ffe1bb0 0x1c8 RW
.coredump.tasks 0x3ffcf10c 0x164 RW
.coredump.tasks 0x3ffcef70 0x184 RW
.coredump.tasks 0x3ffcff84 0x164 RW
.coredump.tasks 0x3ffcfde0 0x18c RW
.coredump.tasks 0x3ffdf574 0x164 RW
.coredump.tasks 0x3ffe0db0 0x1b4 RW
===================== ESP32 CORE DUMP END =====================
===============================================================
Done!
However I will try to investigate if it could be related to memory leak because I use heap in my application.
Thanks
Re: vTaskDelay
Hi @davdav
I'm looking at the core dump output and I see the following.
It seems like something is accessing the flash cache. spi_flash_op_block_func() will disable the scheduler and according to the core dump, it's being called via the IPC task. Therefore one of the cores is calling spi_flash_disable_interrupts_caches_and_other_cpu() and using the IPC task to invoke a call to spi_flash_op_block_func() on the other core. Both of those functions will disable the scheduler, but for some whilst those two functions are running, the task that calls vTaskDelay() is also able to run.
Could you please track down where the calls to SPI flash functions originate from (e.g. which task, its priority, and core affinity). The same information for the task which calls vTaskDelay() would also be useful. I want to determine if this is a scheduling bug.
I'm looking at the core dump output and I see the following.
Code: Select all
#0 0x400838bc in spi_flash_op_block_func (arg=0x0) at C:/msys32/home/Davide/esp/esp-idf/components/spi_flash/cache_utils.c:82
#1 0x40081cb0 in ipc_task (arg=<optimized out>) at C:/msys32/home/Davide/esp/esp-idf/components/esp32/ipc.c:63
Could you please track down where the calls to SPI flash functions originate from (e.g. which task, its priority, and core affinity). The same information for the task which calls vTaskDelay() would also be useful. I want to determine if this is a scheduling bug.
Re: vTaskDelay
Hello ESP_Dazz,
Thank you for providing attention to my issue.
I don't have JTAG but I can enable GDB stub in case of crash.
Is there any tool/command/documentation I have to use in order to give you what you need?
Thanks
Thank you for providing attention to my issue.
Can you please tell me how can I retrieve all the information you mention?Could you please track down where the calls to SPI flash functions originate from (e.g. which task, its priority, and core affinity).
I don't have JTAG but I can enable GDB stub in case of crash.
Is there any tool/command/documentation I have to use in order to give you what you need?
I will send you a list of the tasks in my application. All of them are NOT pinned to a core and have priority from 11 to 7.The same information for the task which calls vTaskDelay() would also be useful.
Thanks
Re: vTaskDelay
Hi davdav,
The easiest way to track down which task(s) are calling SPI flash functions would be to add an assert(0); at the first line of spi_flash_op_block_func() and spi_flash_disable_interrupts_caches_and_other_cpu(). This should cause a back trace to be printed when either functions are called.
The easiest way to track down which task(s) are calling SPI flash functions would be to add an assert(0); at the first line of spi_flash_op_block_func() and spi_flash_disable_interrupts_caches_and_other_cpu(). This should cause a back trace to be printed when either functions are called.
This will also be helpful. Thanks!davdav wrote: I will send you a list of the tasks in my application. All of them are NOT pinned to a core and have priority from 11 to 7.
Who is online
Users browsing this forum: Majestic-12 [Bot] and 9 guests