-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix ESP32 platform manager shutdown. #22417
Fix ESP32 platform manager shutdown. #22417
Conversation
The QEMU ESP32 tests start and stop the platform manager several times, and the lack of a shutdown implementation was putting things in a bad state. Also adjusts the test runner script to trigger a test failure when we do end up in that bad state: we were passing even though we crashed quite early in the test run and most of the tests did not run.
e3ffa13
to
86dc30f
Compare
PR #22417: Size comparison from e535710 to 86dc30f Increases (10 builds for bl602, cc13x2_26x2, esp32, nrfconnect, psoc6, qpg)
Decreases (7 builds for cc13x2_26x2, esp32, psoc6)
Full report (45 builds for bl602, cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
|
src/include/platform/internal/GenericPlatformManagerImpl_FreeRTOS.ipp
Outdated
Show resolved
Hide resolved
src/include/platform/internal/GenericPlatformManagerImpl_FreeRTOS.ipp
Outdated
Show resolved
Hide resolved
src/include/platform/internal/GenericPlatformManagerImpl_FreeRTOS.ipp
Outdated
Show resolved
Hide resolved
Accepted for v1: high value fix for testing only (assuming other FreeRTOS platforms generally have no need to call shutdown, they would just reboot) |
With the no-deleting change, @jmartinez-silabs @tcarmelveilleux any ideas what might be going on there? |
OK, so I now understand why things started failing. There were two problems:
|
Ensure we always start with an empty event queue after FreeRTOS _InitChipStack.
f6ffaa4
to
cf2d6b8
Compare
PR #22417: Size comparison from 0e3bbae to cf2d6b8 Increases above 0.2%:
Increases (33 builds for bl602, cc13x2_26x2, cyw30739, efr32, esp32, k32w, mbed, nrfconnect, psoc6, qpg, telink)
Decreases (8 builds for cc13x2_26x2, telink)
Full report (46 builds for bl602, cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
|
* Fix ESP32 platform manager shutdown. The QEMU ESP32 tests start and stop the platform manager several times, and the lack of a shutdown implementation was putting things in a bad state. Also adjusts the test runner script to trigger a test failure when we do end up in that bad state: we were passing even though we crashed quite early in the test run and most of the tests did not run. * Address review comments. * Fix unlocking in FreeRTOS _RunEventLoop. Ensure we always start with an empty event queue after FreeRTOS _InitChipStack.
The QEMU ESP32 tests start and stop the platform manager several times, and the
lack of a shutdown implementation was putting things in a bad state.
Also adjusts the test runner script to trigger a test failure when we do end up
in that bad state: we were passing even though we crashed quite early in the
test run and most of the tests did not run.
Fixes #22492
Problem
QEMU tests happily pass when they actually totally fail to run.
Change overview
See above.
Testing
Ran the QEMU tests locally, looked at the logs and the resulting status.