18 Commits

Author SHA1 Message Date
Omar Chebib
e7d5fee856 change(espcoredump): save RAM space by placing constants in flash
All the log messages of espcoredump component used to be in DRAM, which would
lower the available RAM space for the user application. Since the cache is always
enabled after an exception, constants can be put in flash.
2024-02-22 18:49:49 +08:00
Erhan Kurubas
4a32955f74 feat(coredump): save isr context to coredump elf file 2023-11-28 18:19:19 +01:00
Mahavir Jain
31aa471af8 Merge branch 'contrib/github_pr_11869_v5.1' into 'release/v5.1'
bugfix: avoid warning in espcoredump when log disabled (GitHub PR) (v5.1)

See merge request espressif/esp-idf!25143
2023-09-11 14:42:10 +08:00
Erhan Kurubas
568c397822 feat(coredump): add panic details to the elf file 2023-08-28 18:48:16 +02:00
Christoph Baechler
d42d86b369 bugfix: avoid warning in espcoredump when log disabled 2023-08-24 04:17:33 +00:00
Omar Chebib
42b2169542 coredump: add support for stacks in external RAM
Tasks having their stacks in SPIRAM can now be part of the coredump written to flash
2022-12-22 12:47:22 +01:00
Omar Chebib
e25cda2c40 Task WDT: Interuptee task stack is now used for backtracing, regardless of the CPU core
For RISC-V and Xtensa targets, in case a panic needs to happen when
Task WDT is triggered (ESP_TASK_WDT_PANIC), the interruptee's stack
is now used for printing the backtrace.
Abort after Task Watchdog is triggered can happen on APP CPU (second core).
2022-08-02 12:41:14 +08:00
Anton Maklakov
45f267390b espcoredump: fix unsigned arithmetic 2022-05-30 11:21:30 +07:00
Anton Maklakov
57785e5eca espcoredump: suppress -Waddress-of-packed-member warning 2022-05-30 11:21:30 +07:00
Sudeep Mohanty
e22b4007d3 esp_hw_support: Removed deprecated CPU util functions
The following files were deleted:
- components/esp_hw_support/include/soc/cpu.h
- components/soc/esp32s3/include/soc/cpu.h

The following functions are deprecated:
- get_sp()

The following functions declared in soc/cpu.h are now moved to esp_cpu.h:
- esp_cpu_configure_region_protection()

The following functions declared in soc/cpu.h are now moved to components/xtensa/include/esp_cpu_utils.h:
- esp_cpu_process_stack_pc()

All files with soc/cpu.h inclusion are updated to include esp_cpu.h instead.

Signed-off-by: Sudeep Mohanty <sudeep.mohanty@espressif.com>
2021-12-28 16:58:37 +05:30
Shubham Patil
8ad9daea7d espcoredump: Parse bt for instruction fetch prohibited cause 2021-09-29 23:08:54 +05:30
dmitry
5d859f1404 Add Esp32s3 to the coredump component.
Add changed expected_output for esp32, esp32s2 and esp32c3. coredump tag update.
2021-09-13 05:20:34 -04:00
Omar Chebib
83c9e1b223 freertos: take tasks snapshot out of tasks.c source code 2021-08-16 10:29:36 +08:00
Sachin Parekh
46dc36233a coredump: Parse backtrace info for RISCV
For RISCV, backtrace generation on device is not possible without
including and parsing DWARF sections. We extract the crash task stack
and let the host generate the backtrace
2021-05-17 11:43:25 +05:30
Fu Hanxi
d94423c1cf fix(coredump): pr_status pid padding should be uint16 2021-04-26 20:44:23 +08:00
Shubham Patil
356e2bbe6d espcoredump: On device core dump parsing to generate summary 2021-04-09 09:43:40 +05:30
Omar Chebib
e533431095 espcoredump: Fix bugs related to (fake) stacks
Add support to tasks stacks in RTC DRAM. Before this fix, any stack
in RTC DRAM would have been considered as corrupted, whichi is not
the case.
Fix a bug related to wrong parameters passed to esp_core_dump_get_stack.
Fix a bug reading fake stack memory, triggering a memory violation.

* Closes https://github.com/espressif/esp-idf/issues/6751
* Merges https://github.com/espressif/esp-idf/pull/6750
2021-03-22 11:38:21 +08:00
Omar Chebib
e9996ebd4b espcoredump: code refactoring and add support for RISC-V implemetation
This commit includes the refactoring of the core dump feature. Thanks to
this refactoring, it is easier to integrate the support of RISC-V
architecture for this feature.

Fixes ESP-1758
2021-02-07 19:04:19 +08:00