Skip to content

Commit 3c09383

Browse files
authored
Fix CBMC proof failures (FreeRTOS#946)
* Fix CBMC proof failures These were introduced in PR FreeRTOS#620. Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com> * Update manifest Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com> --------- Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
1 parent 67911f8 commit 3c09383

File tree

5 files changed

+16
-16
lines changed

5 files changed

+16
-16
lines changed

FreeRTOS/Source

Submodule Source updated 220 files

FreeRTOS/Test/CBMC/patches/0005-Remove-volatile-qualifier-from-tasks-variables.patch

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -41,21 +41,21 @@ Here, `uxPendedTicks` could return any value, making it impossible to unwind
4141
as a regular variable so that the loop can be unwound.
4242

4343
diff --git a/FreeRTOS/Source/tasks.c b/FreeRTOS/Source/tasks.c
44-
index c7be57cb2..9f76465d5 100644
44+
index 0e7a56c60..b29c19ea5 100644
4545
--- a/FreeRTOS/Source/tasks.c
4646
+++ b/FreeRTOS/Source/tasks.c
47-
@@ -343,8 +343,8 @@ PRIVILEGED_DATA TCB_t * volatile pxCurrentTCB = NULL;
48-
PRIVILEGED_DATA static List_t pxReadyTasksLists[ configMAX_PRIORITIES ]; /*< Prioritised ready tasks. */
49-
PRIVILEGED_DATA static List_t xDelayedTaskList1; /*< Delayed tasks. */
50-
PRIVILEGED_DATA static List_t xDelayedTaskList2; /*< Delayed tasks (two lists are used - one for delays that have overflowed the current tick count. */
51-
-PRIVILEGED_DATA static List_t * volatile pxDelayedTaskList; /*< Points to the delayed task list currently being used. */
52-
-PRIVILEGED_DATA static List_t * volatile pxOverflowDelayedTaskList; /*< Points to the delayed task list currently being used to hold tasks that have overflowed the current tick count. */
53-
+PRIVILEGED_DATA static List_t * pxDelayedTaskList; /*< Points to the delayed task list currently being used. */
54-
+PRIVILEGED_DATA static List_t * pxOverflowDelayedTaskList; /*< Points to the delayed task list currently being used to hold tasks that have overflowed the current tick count. */
55-
PRIVILEGED_DATA static List_t xPendingReadyList; /*< Tasks that have been readied while the scheduler was suspended. They will be moved to the ready list when the scheduler is resumed. */
56-
47+
@@ -339,8 +339,8 @@ portDONT_DISCARD PRIVILEGED_DATA TCB_t * volatile pxCurrentTCB = NULL;
48+
PRIVILEGED_DATA static List_t pxReadyTasksLists[ configMAX_PRIORITIES ]; /**< Prioritised ready tasks. */
49+
PRIVILEGED_DATA static List_t xDelayedTaskList1; /**< Delayed tasks. */
50+
PRIVILEGED_DATA static List_t xDelayedTaskList2; /**< Delayed tasks (two lists are used - one for delays that have overflowed the current tick count. */
51+
-PRIVILEGED_DATA static List_t * volatile pxDelayedTaskList; /**< Points to the delayed task list currently being used. */
52+
-PRIVILEGED_DATA static List_t * volatile pxOverflowDelayedTaskList; /**< Points to the delayed task list currently being used to hold tasks that have overflowed the current tick count. */
53+
+PRIVILEGED_DATA static List_t * pxDelayedTaskList; /**< Points to the delayed task list currently being used. */
54+
+PRIVILEGED_DATA static List_t * pxOverflowDelayedTaskList; /**< Points to the delayed task list currently being used to hold tasks that have overflowed the current tick count. */
55+
PRIVILEGED_DATA static List_t xPendingReadyList; /**< Tasks that have been readied while the scheduler was suspended. They will be moved to the ready list when the scheduler is resumed. */
56+
5757
#if ( INCLUDE_vTaskDelete == 1 )
58-
@@ -371,7 +371,7 @@ PRIVILEGED_DATA static volatile UBaseType_t uxCurrentNumberOfTasks = ( UBaseType
58+
@@ -367,7 +367,7 @@ PRIVILEGED_DATA static volatile UBaseType_t uxCurrentNumberOfTasks = ( UBaseType
5959
PRIVILEGED_DATA static volatile TickType_t xTickCount = ( TickType_t ) configINITIAL_TICK_COUNT;
6060
PRIVILEGED_DATA static volatile UBaseType_t uxTopReadyPriority = tskIDLE_PRIORITY;
6161
PRIVILEGED_DATA static volatile BaseType_t xSchedulerRunning = pdFALSE;

FreeRTOS/Test/CBMC/proofs/Task/TaskIncrementTick/Configurations.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
"CBMCFLAGS":
4949
[
5050
"--unwind 1",
51-
"--unwindset prvInitialiseTaskLists.0:8,vListInsert.0:2,xTaskIncrementTick.0:4"
51+
"--unwindset prvInitialiseTaskLists.0:8,vListInsert.0:2,xTaskIncrementTick.5:4"
5252
],
5353
"OBJS":
5454
[

FreeRTOS/Test/CBMC/proofs/Task/TaskResumeAll/Configurations.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
"CBMCFLAGS":
5454
[
5555
"--unwind 1",
56-
"--unwindset prvInitialiseTaskLists.0:8,xTaskResumeAll.0:2,vListInsert.0:5,xTaskIncrementTick.0:4"
56+
"--unwindset prvInitialiseTaskLists.0:8,xTaskResumeAll.4:2,vListInsert.0:5,xTaskIncrementTick.5:4"
5757

5858
],
5959
"OBJS":

manifest.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: "This is the standard distribution of FreeRTOS."
44

55
dependencies:
66
- name: "FreeRTOS-Kernel"
7-
version: "bb6071e1d"
7+
version: "ddd50d9a8"
88
repository:
99
type: "git"
1010
url: "https://github.com/FreeRTOS/FreeRTOS-Kernel.git"

0 commit comments

Comments
 (0)