-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
modules: memfault: Add automatic sending of coredumps over LTE #20040
base: main
Are you sure you want to change the base?
Conversation
CI InformationTo view the history of this post, clich the 'edited' button above Inputs:Sources:sdk-nrf: PR head: 3c1590774010143b5267b85f6de4227576c7bf44 more detailssdk-nrf:
Github labels
List of changed files detected by CI (18)
Outputs:ToolchainVersion: 342151af73 Test Spec & Results: ✅ Success; ❌ Failure; 🟠 Queued; 🟡 Progress; ◻️ Skipped;
|
You can find the documentation preview for this PR at this link. Note: This comment is automatically posted by the Documentation Publish GitHub Action. |
Worth a changelog entry? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/libraries/debug/memfault_ncs.html states:
When building applications with Trusted Firmware-M (TF-M), the faults resulting from memory access in secure regions are not caught by Memfault’s fault handler. Instead, they are handled by TF-M. This means that those faults are not reported to the Memfault platform.
Has this changed? If yes, then the document should be updated. If not, then the use-cases for this would be quite limited.
I think it's still true that faults originating in secure domain will not be forwarded to Memfault. |
Ah, you are correct. It mentions the secure regions. I was looking at this through lenses of having attempted to collect a crash dump with memfault with TF-M (for non-secure), in which I was ultimately not successful, but I take your word that it should work for NS. Edit: I got the dump as text, but was not able to get it working. |
99efc15
to
7a63ec5
Compare
0c758c4
to
1b839b2
Compare
1b839b2
to
4bcb3d1
Compare
@MarkusLassila I've added more information about the new automatic coredump send feature. However, I have not included details on how Memfault stores and handles coredumps, as that falls outside the scope of this PR. I've updated the changelog for SLM and the Memfault integration. |
4bcb3d1
to
dc7e3d7
Compare
doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst
Outdated
Show resolved
Hide resolved
doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst
Outdated
Show resolved
Hide resolved
doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst
Outdated
Show resolved
Hide resolved
dc7e3d7
to
4094cf5
Compare
doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst
Outdated
Show resolved
Hide resolved
doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approving SLM parts
doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Commits need squashing
52ab5ff
to
21783e0
Compare
9a47a99
to
8aceacc
Compare
fb524eb
to
f1596fe
Compare
Add automatic sending of coredumps over LTE: - Add new file memfault_lte_coredump.c that uses LTE cereg and PDN to determine if the device is connected to the network. If connected, the layer will trigger sending of a stored coredump. Library is implemented with retry logic and backoff. - Add overlay file to SLM that enables Memfault features - Update Memfault sample to use the new coredump feature. - Add missing features to Memfault sample - Enable assertions by default in SLM, there is no reason why it should be enabled as long as there is space. Signed-off-by: Simen S. Røstad <[email protected]>
f1596fe
to
3c15907
Compare
Delay coredump posting to Memfault to avoid conflicts with the application's | ||
TLS connection setup that occurs typically LTE network is obtained. | ||
The delay duration is defined by CONFIG_MEMFAULT_NCS_POST_COREDUMP_RETRY_INTERVAL_SECONDS. | ||
#§ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
?
Add automatic sending of coredumps over LTE:
Add new file memfault_lte_coredump.c that uses LTE cereg and PDN to determine if the device is connected to the network.
If connected, the layer will trigger sending of a stored coredump. Library is implemented with retry logic and backoff.
Add overlay file to SLM that enables Memfault features
Update Memfault sample to use the new coredump feature.
Add missing features to Memfault sample
Enable assertions by default in SLM, there is no reason why it should be enabled as long as there is space.
Implemented according to state diagram found here:
https://miro.com/app/board/uXjVLrI-A64=/