summaryrefslogtreecommitdiff
path: root/FreeRTOS/Test/CBMC/proofs/Queue/QueueTakeMutexRecursive/README.md
blob: 4513147d94cc4a1b35faf5fbc716eff6074d7c84 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Assuming that the parameter is valid mutex data structure and reasonable
bounded, this harness proves the memory safety of QueueTakeMutexRecursive.
Task pool and concurrency functions are abstracted away and replaced with
required stubs to drive coverage.

This proof is a work-in-progress.  Proof assumptions are described in
the harness.  The proof also assumes the following functions are
memory safe and have no side effects relevant to the memory safety of
this function:

* pvTaskIncrementMutexHeldCount
* vPortEnterCritical
* vPortExitCritical
* vPortGenerateSimulatedInterrupt
* vTaskMissedYield
* vTaskPlaceOnEventList
* vTaskPriorityDisinheritAfterTimeout
* vTaskSuspendAll
* xTaskGetCurrentTaskHandle
* xTaskPriorityDisinherit
* xTaskPriorityInherit
* xTaskRemoveFromEventList
* xTaskResumeAll