FreeRTOS-Kernel/FreeRTOS/Test/CBMC/proofs/Task/TaskDelete
johnrhen 43defa566c
Apply release changes to main branch (#759)
* Update History.txt and README.md for December release (#744)

* Update History.txt and README.md for release

* Bump mbedtls submodule to v2.28.0 (#745)

* Patch project files for mbedtls (#751)

* Apply group 1 patches

* Apply patches for group 2

* Update project files for mbedTLS new version

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Fix warnings in projects

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Fix warnings in HTTP_S3_Download demo

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>

* Update changelog and history for corePKCS11 update (#752)

* Update submodule pointer and manifest.yml for corePKCS11 (#754)

* Update readme and history.txt to show that Sigv4 is a newly added library (#756)

* Revert update to v143 of VS toolset (#757)

* [AUTO][RELEASE]: Bump file header version to "202112.00"

* Update file headers to satisfy core checks

Co-authored-by: Muneeb Ahmed <54290492+muneebahmed10@users.noreply.github.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: johnrhen <johnrhen@users.noreply.github.com>
2021-12-23 10:16:27 -08:00
..
cbmc-viewer.json Add CBMC viewer configuration files (#683) 2021-09-13 21:23:35 -04:00
Makefile.json Copying CBMC proofs from aws/amazon-freertos repo ./tools/cbmc to this repo ./FreeRTOS/Test/CBMC as is. 2020-03-31 14:21:53 -07:00
README.md Copying CBMC proofs from aws/amazon-freertos repo ./tools/cbmc to this repo ./FreeRTOS/Test/CBMC as is. 2020-03-31 14:21:53 -07:00
TaskDelete_harness.c Apply release changes to main branch (#759) 2021-12-23 10:16:27 -08:00
tasks_test_access_functions.h Apply release changes to main branch (#759) 2021-12-23 10:16:27 -08:00

This proof demonstrates the memory safety of the TaskDelete function. The initialization for the task to be delete and pxCurrentTCB is quite similar (since the task handle may be NULL, and in that case pxCurrentTCB is used). The task to be deleted requires the stack in the task control block to be allocated, and the flag for static allocation to be properly set (i.e., valid values as defined by the macros) Task lists are initialized with these tasks and nondet. filled with a few more items. We assume a nondet. value for xSchedulerRunning.

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:

  • vPortCloseRunningThread
  • vPortDeleteThread
  • vPortEnterCritical
  • vPortExitCritical
  • vPortGenerateSimulatedInterrupt