Commit Graph

89 Commits

Author SHA1 Message Date
Aleksei Apaseev
01f1aba2d0 ci: lift restriction on pygdbmi in panic test 2022-06-30 14:09:18 +08:00
Djordje Nedic
facab8c5a7 tools: Increase the minimal supported CMake version to 3.16
This updates the minimal supported version of CMake to 3.16, which in turn enables us to use more CMake features and have a cleaner build system.
This is the version that provides most new features and also the one we use in our latest docker image for CI.
2022-06-01 06:35:02 +00:00
Fu Hanxi
d2aae6d53a fix: panic test case test_task_wdt 2022-05-25 10:30:29 +08:00
Fu Hanxi
5c997bd5dd ci(pytest): upgrade to 0.7.0 2022-05-13 11:54:42 +08:00
Ivan Grokhotkov
89e78976ab
tests: panic: make 'get_test_name' work without VFS, add echo
When vfs component is not added to the build, bare minimum syscalls
are provided by newlib component. These syscalls currently don't
perform CR/LF translation.
This commit makes the 'get_test_name' function work with minimal
syscalls and also adds echo, so that the user sees what they type.
2022-05-02 20:47:18 +02:00
Fu Hanxi
1b095db5c9 ci(pytest): refactor panic test to pytest 2022-02-23 09:12:46 +08:00
Anton Maklakov
7e569e1524 test_apps/panic: GDB in esp-2021r2-patch3 toolchain doesn't contain the fix for interrupted backtraced
Revert "test_apps/panic: remove workaround for incorrect GDB backtrace"

This reverts commit 3e3fa4bff2.
2022-02-21 10:51:41 +07:00
Ivan Grokhotkov
8df306ab60 freertos,esp_system: make dependencies on some components optional
Dependencies on gdbstub, espcoredump, app_trace will only be added
if these components are present in the build.
2021-12-13 18:39:49 +01:00
Anton Maklakov
e525964f67 Merge branch 'bugfix/gdbstub_4_c3' into 'master'
Add missing function for C3

See merge request espressif/esp-idf!15538
2021-10-26 10:16:38 +00:00
Dmitry
1457c42f6f bugfix/esp-gdbstrub: add missing function for esp32c3/esp32h2. 2021-10-25 10:30:50 +03:00
Anton Maklakov
3e3fa4bff2 test_apps/panic: remove workaround for incorrect GDB backtrace 2021-10-20 22:00:39 +07:00
Sachin Parekh
6582f7070e Update tests for assert and abort
- Place panic_abort in IRAM
- Added abort, assert test case in case of cache disabled
- Expect assert instead of abort in a freertos_mutex test
2021-08-05 11:09:22 +05:30
Roland Dobai
1ecdab3a70 CI: Debug GDB issues 2021-07-23 02:00:00 +08:00
Angus Gratton
d127a1fa75 ci panic test: Update the panic test timeout from 3s to 10s
If it takes longer than 10s to respond, it's probably not because of the
runner...
2021-06-21 17:08:02 +10:00
Ivan Grokhotkov
e3c8ea00d9 test_apps/panic: apply pre-commit fixes in python scripts 2021-04-22 23:33:46 +02:00
Ivan Grokhotkov
9069f70db3 system: add option to enable undefined behavior sanitizer (UBSAN)
Closes https://github.com/espressif/esp-idf/issues/1574
2021-04-22 23:33:45 +02:00
Omar Chebib
bb9aa806f7 panic: handlers can now be placed in flash
By unchecking "Place panic handler code in IRAM" in the menuconfig,
the panic handlers will be placed in flash. Of course, flash cache must
be activated when entering panic handlers.
2021-04-15 11:58:46 +08:00
Jakob Hasse
5bcb189fe4 [system]: locally run panic test app doc 2021-04-07 18:56:18 +08:00
Angus Gratton
4dba80239e ci: Extend timeout for initial gdbstub commands in panic tests
Theory is that on the runner, in rare cases, gdb may need more than
1 second to load and start responding to commands.

However it's possible these timeouts are due to some other problem
(like gdb failing)
2021-03-30 11:01:39 +11:00
Fu Hanxi
119b61451f fix(test_apps): add supported targets for memprot, panic, monitor_ide 2021-01-27 12:35:49 +08:00
Fu Hanxi
0146f258d7 style: format python files with isort and double-quote-string-fixer 2021-01-26 10:49:01 +08:00
Aditya Patwardhan
b77c85c1e1 ttfw/IDFDUT: i) Added option to erase_flash in the IDFDUT class
ii) Renamed the method dump_flush to dump_flash
2021-01-20 11:12:14 +00:00
Jakob Hasse
b51889dccb system: stack watchpoint support on C3
Closes IDF-2307
2021-01-14 17:46:44 +08:00
Ivan Grokhotkov
9827adaa09 panic: fix illegal instruction test to be compatible with RISC-V 2021-01-14 16:35:11 +08:00
Ivan Grokhotkov
7ab57605cb test: panic: make stack overflow test more robust
The previous approach was to allocate an array on the stack, and
have the array extend past the stack size. This worked by would
result in SP being moved near the end of the stack. If an interrupt
triggered at that time, interrupt prologue would try to save the
context to the stack, tripping the stack overflow watchpoint.

Replacing this with the approach which doesn't move the SP and simply
writes to decreasing addresses from SP, until stack overflow check
triggers.
2020-12-30 01:10:09 +01:00
Fu Hanxi
0f96b70294 ci: add esp32s2 support for panic test 2020-12-15 17:57:21 +08:00
Ivan Grokhotkov
e32885d699 tools/test_apps: run tests which don't need JTAG on Example_GENERIC 2020-12-15 17:56:53 +08:00
Fu Hanxi
2547670477 Add esp32s2 support for panic test, run as default 2020-12-15 17:56:53 +08:00
Angus Gratton
66fb5a29bb Whitespace: Automated whitespace fixes (large commit)
Apply the pre-commit hook whitespace fixes to all files in the repo.

(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
Ivan Grokhotkov
b1d64d1a61 test/panic: add gdbstub test configuration 2020-10-13 18:09:22 +02:00
Mahavir Jain
20af94ff53 Coredump config option rename throughout IDF 2020-09-30 20:22:27 +05:30
Ivan Grokhotkov
481409ec05 panic: allow running specific test cases from command line
Small quality-of-life improvement, make it easier to run specific
test cases, when debugging the tests locally.
Take the optional list of test cases to run from the command line.
2020-08-05 12:00:50 +02:00
Ivan Grokhotkov
709730317b panic: fix checks for corrupted backtrace in the test cases
"CORRUPTED" needs to be checked before ELF SHA256. Use
expect_backtrace in every test (which checks for it), remove extra
check for CORRUPTED.
2020-08-05 12:00:50 +02:00
Ivan Grokhotkov
5ff9cd495e panic: skip over the first invalid PC in case of InstrFetchProhibited
InstrFetchProhibited usually occurs because of a jump to an invalid
pointer. In this case, PC in the exception frame is the address of
the jump destination. 'esp_ptr_executable' check in print_backtrace
function recognizes the first frame as invalid, and the backtrace is
interrupted. This prevents the user from finding the location where
the invalid pointer is dereferenced.

Bypass the 'esp_ptr_executable' check if the exception cause is
InstrFetchProhibited. Update the test case to no longer ignore this
issue.
2020-08-05 12:00:50 +02:00
Ivan Grokhotkov
3e8833cda8 Merge branch 'feature/coredump_new_ci_tests' into 'master'
coredump: Add CI tests

See merge request espressif/esp-idf!8998
2020-07-28 17:22:43 +08:00
Fu Hanxi
6885421976 CI: add size info for binaries 2020-07-21 16:00:05 +08:00
Sylvio Alves
fb3c36b88d coredump: Added CI tests 2020-06-24 10:51:06 -03:00
Ivan Grokhotkov
8c09968adc test_apps: add coredump tests for int_wdt 2020-06-02 15:42:24 +02:00
Ivan Grokhotkov
418b68a197 test_apps: add panic test 2020-05-12 22:27:06 +02:00