mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-10-27 07:46:20 -04:00
The tracelyzer code was declaring a local stack variable of type `uint32_t` and passing it as output parameter to a function which expected `uint64_t` on a 64-bit platform. This resulted in 4 byte memory corruption. The problem was that the function signature uses `TraceUnsignedBaseType_t` type for the output parameter which gets defined to `uint32_t` on a 32-bit platform and to `uint64_t` on a 64-bit platform, while the local stack variable was declared as `uint32_t`. This commit changes the type of local stack variable to `TraceUnsignedBaseType_t` to match the function parameter type. Tracelyzer creates a task internally stack size of which is controlled using TRC_CFG_CTRL_TASK_STACK_SIZE. It was earlier defined to 1024. The POSIX port requires the stack size to be minimum PTHREAD_STACK_MIN. The commit updates the TRC_CFG_CTRL_TASK_STACK_SIZE to PTHREAD_STACK_MIN. The demo directory contained one extra trcConfig.h and trcKernelPortConfig.h. This commit deletes those files. Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com> Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com> |
||
|---|---|---|
| .. | ||
| config | ||
| extras/TraceRecorderInit | ||
| Include | ||
| streamports | ||
| LICENSE.md | ||
| LICENSE.spdx | ||
| README.md | ||
| ReadMe.url | ||
| trcAssert.c | ||
| trcCounter.c | ||
| trcDiagnostics.c | ||
| trcEntryTable.c | ||
| trcError.c | ||
| trcEvent.c | ||
| trcEventBuffer.c | ||
| trcExtension.c | ||
| trcHardwarePort.c | ||
| trcHeap.c | ||
| trcInternalEventBuffer.c | ||
| trcInterval.c | ||
| trcISR.c | ||
| trcKernelPort.c | ||
| trcMultiCoreEventBuffer.c | ||
| trcObject.c | ||
| trcPrint.c | ||
| trcSnapshotRecorder.c | ||
| trcStackMonitor.c | ||
| trcStateMachine.c | ||
| trcStaticBuffer.c | ||
| trcStreamingRecorder.c | ||
| trcString.c | ||
| trcTask.c | ||
| trcTimestamp.c | ||
Trace Recorder source code for use with Percepio's Tracealyzer.
Read more at https://percepio.com/tracealyzer/ and https://percepio.com/gettingstarted.
Repository at https://github.com/percepio/TraceRecorderSource