[rtems-central commit] spec: Test thread queue API change
Sebastian Huber
sebh at rtems.org
Fri Sep 24 11:32:07 UTC 2021
Module: rtems-central
Branch: master
Commit: 071e3e10ceb38f2981a69b0948e44039418703d9
Changeset: http://git.rtems.org/rtems-central/commit/?id=071e3e10ceb38f2981a69b0948e44039418703d9
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Tue Sep 21 08:27:40 2021 +0200
spec: Test thread queue API change
---
spec/rtems/message/req/receive.yml | 2 +-
spec/rtems/sem/req/flush.yml | 10 +++++-----
spec/rtems/sem/req/obtain.yml | 2 +-
spec/rtems/sem/req/timeout.yml | 2 +-
spec/score/futex/req/wait.yml | 2 +-
spec/score/futex/req/wake.yml | 2 +-
spec/score/sem/req/seize-wait.yml | 2 +-
spec/score/tq/req/enqueue-ceiling.yml | 3 ++-
spec/score/tq/req/enqueue-mrsp.yml | 3 ++-
9 files changed, 15 insertions(+), 13 deletions(-)
diff --git a/spec/rtems/message/req/receive.yml b/spec/rtems/message/req/receive.yml
index a291895..6cbf78b 100644
--- a/spec/rtems/message/req/receive.yml
+++ b/spec/rtems/message/req/receive.yml
@@ -488,7 +488,7 @@ test-setup:
memset( ctx, 0, sizeof( *ctx ) );
ctx->magic = magic;
ctx->tq_ctx.enqueue = ReceiveMsg;
- ctx->tq_ctx.surrender = TQDoNothing;
+ ctx->tq_ctx.surrender = TQDoNothingSuccessfully;
ctx->tq_ctx.convert_status = TQConvertStatusClassic;
ctx->tq_ctx.enqueue_prepare = EnqueuePrepare;
ctx->tq_ctx.enqueue_done = EnqueueDone;
diff --git a/spec/rtems/sem/req/flush.yml b/spec/rtems/sem/req/flush.yml
index 76a3d37..1c6a396 100644
--- a/spec/rtems/sem/req/flush.yml
+++ b/spec/rtems/sem/req/flush.yml
@@ -74,7 +74,7 @@ pre-conditions:
ctx->attribute_set |= RTEMS_BINARY_SEMAPHORE;
ctx->initial_count = 1;
ctx->tq_ctx.enqueue_prepare = EnqueuePrepare;
- ctx->tq_ctx.enqueue_done = TQSurrenderClassicSem;
+ ctx->tq_ctx.enqueue_done = TQEnqueueDoneDefault;
text: |
While the semaphore object is a binary semaphore.
- name: PrioCeiling
@@ -82,7 +82,7 @@ pre-conditions:
ctx->attribute_set |= RTEMS_BINARY_SEMAPHORE | RTEMS_PRIORITY_CEILING;
ctx->initial_count = 1;
ctx->tq_ctx.enqueue_prepare = EnqueuePrepare;
- ctx->tq_ctx.enqueue_done = TQSurrenderClassicSem;
+ ctx->tq_ctx.enqueue_done = TQEnqueueDoneDefault;
text: |
While the semaphore object is a priority ceiling semaphore.
- name: PrioInherit
@@ -90,7 +90,7 @@ pre-conditions:
ctx->attribute_set |= RTEMS_BINARY_SEMAPHORE | RTEMS_INHERIT_PRIORITY;
ctx->initial_count = 1;
ctx->tq_ctx.enqueue_prepare = EnqueuePrepare;
- ctx->tq_ctx.enqueue_done = TQSurrenderClassicSem;
+ ctx->tq_ctx.enqueue_done = TQEnqueueDoneDefault;
text: |
While the semaphore object is a priority inheritance semaphore.
- name: MrsP
@@ -99,7 +99,7 @@ pre-conditions:
RTEMS_MULTIPROCESSOR_RESOURCE_SHARING;
ctx->initial_count = 1;
ctx->tq_ctx.enqueue_prepare = EnqueuePrepare;
- ctx->tq_ctx.enqueue_done = TQSurrenderClassicSem;
+ ctx->tq_ctx.enqueue_done = TQEnqueueDoneDefault;
text: |
While the semaphore object is a MrsP semaphore.
test-epilogue: null
@@ -199,7 +199,7 @@ test-setup:
memset( ctx, 0, sizeof( *ctx ) );
ctx->tq_ctx.enqueue = Enqueue;
ctx->tq_ctx.flush = Flush;
- ctx->tq_ctx.surrender = TQDoNothing;
+ ctx->tq_ctx.surrender = TQSurrenderClassicSem;
ctx->tq_ctx.convert_status = TQConvertStatusClassic;
TQInitialize( &ctx->tq_ctx );
description: null
diff --git a/spec/rtems/sem/req/obtain.yml b/spec/rtems/sem/req/obtain.yml
index 2e0a3b3..2086c56 100644
--- a/spec/rtems/sem/req/obtain.yml
+++ b/spec/rtems/sem/req/obtain.yml
@@ -269,7 +269,7 @@ test-setup:
code: |
memset( ctx, 0, sizeof( *ctx ) );
ctx->tq_ctx.enqueue_prepare = TQEnqueuePrepareDefault;
- ctx->tq_ctx.enqueue_done = TQSurrenderClassicSem;
+ ctx->tq_ctx.enqueue_done = TQEnqueueDoneDefault;
ctx->tq_ctx.enqueue = TQEnqueueClassicSem;
ctx->tq_ctx.surrender = TQSurrenderClassicSem;
ctx->tq_ctx.get_owner = TQGetOwnerClassicSem;
diff --git a/spec/rtems/sem/req/timeout.yml b/spec/rtems/sem/req/timeout.yml
index 3030343..5a31fa6 100644
--- a/spec/rtems/sem/req/timeout.yml
+++ b/spec/rtems/sem/req/timeout.yml
@@ -141,7 +141,7 @@ test-setup:
memset( ctx, 0, sizeof( *ctx ) );
ctx->tq_ctx.wait = TQ_WAIT_TIMED;
ctx->tq_ctx.enqueue_prepare = TQEnqueuePrepareDefault;
- ctx->tq_ctx.enqueue_done = TQSurrenderClassicSem;
+ ctx->tq_ctx.enqueue_done = TQEnqueueDoneDefault;
ctx->tq_ctx.enqueue = TQEnqueueClassicSem;
ctx->tq_ctx.surrender = TQSurrenderClassicSem;
ctx->tq_ctx.convert_status = TQConvertStatusClassic;
diff --git a/spec/score/futex/req/wait.yml b/spec/score/futex/req/wait.yml
index 0f06eee..cd12e1b 100644
--- a/spec/score/futex/req/wait.yml
+++ b/spec/score/futex/req/wait.yml
@@ -108,7 +108,7 @@ test-setup:
ctx->tq_ctx.enqueue_prepare = TQDoNothing;
ctx->tq_ctx.enqueue = Enqueue;
ctx->tq_ctx.enqueue_done = EnqueueDone;
- ctx->tq_ctx.surrender = TQDoNothing;
+ ctx->tq_ctx.surrender = TQDoNothingSuccessfully;
ctx->tq_ctx.convert_status = TQConvertStatusPOSIX;
TQInitialize( &ctx->tq_ctx );
description: null
diff --git a/spec/score/futex/req/wake.yml b/spec/score/futex/req/wake.yml
index aac9ad3..c7d4265 100644
--- a/spec/score/futex/req/wake.yml
+++ b/spec/score/futex/req/wake.yml
@@ -112,7 +112,7 @@ test-setup:
ctx->tq_ctx.enqueue = Enqueue;
ctx->tq_ctx.enqueue_done = TQDoNothing;
ctx->tq_ctx.flush = Flush;
- ctx->tq_ctx.surrender = TQDoNothing;
+ ctx->tq_ctx.surrender = TQDoNothingSuccessfully;
ctx->tq_ctx.convert_status = TQConvertStatusPOSIX;
TQInitialize( &ctx->tq_ctx );
description: null
diff --git a/spec/score/sem/req/seize-wait.yml b/spec/score/sem/req/seize-wait.yml
index cbb5297..8df71d9 100644
--- a/spec/score/sem/req/seize-wait.yml
+++ b/spec/score/sem/req/seize-wait.yml
@@ -120,7 +120,7 @@ test-local-includes:
- tr-tq-enqueue-priority.h
test-prepare: |
ctx->tq_ctx->base.enqueue_prepare = TQEnqueuePrepareDefault;
- ctx->tq_ctx->base.enqueue_done = TQSurrenderClassicSem;
+ ctx->tq_ctx->base.enqueue_done = TQEnqueueDoneDefault;
ctx->tq_ctx->base.get_properties = GetProperties;
test-setup: null
test-stop: null
diff --git a/spec/score/tq/req/enqueue-ceiling.yml b/spec/score/tq/req/enqueue-ceiling.yml
index 66dbe3e..9d68393 100644
--- a/spec/score/tq/req/enqueue-ceiling.yml
+++ b/spec/score/tq/req/enqueue-ceiling.yml
@@ -205,7 +205,8 @@ test-action: |
status = TQEnqueue( ctx->tq_ctx, TQ_WAIT_FOREVER );
T_eq_int( status, TQConvertStatus( ctx->tq_ctx, STATUS_SUCCESSFUL ) );
TQSchedulerRecordStop( ctx->tq_ctx );
- TQSurrender( ctx->tq_ctx );
+ status = TQSurrender( ctx->tq_ctx );
+ T_eq_int( status, TQConvertStatus( ctx->tq_ctx, STATUS_SUCCESSFUL ) );
if (
ctx->priority != PRIO_PSEUDO_ISR &&
diff --git a/spec/score/tq/req/enqueue-mrsp.yml b/spec/score/tq/req/enqueue-mrsp.yml
index 376297b..2708cab 100644
--- a/spec/score/tq/req/enqueue-mrsp.yml
+++ b/spec/score/tq/req/enqueue-mrsp.yml
@@ -231,7 +231,8 @@ test-action: |
);
TQSchedulerRecordStart( ctx->tq_ctx );
- TQSurrender( ctx->tq_ctx );
+ status = TQSurrender( ctx->tq_ctx );
+ T_eq_int( status, TQConvertStatus( ctx->tq_ctx, STATUS_SUCCESSFUL ) );
TQWaitForDone( ctx->tq_ctx, TQ_BLOCKER_A );
if ( CanDoFullValidation() ) {
More information about the vc
mailing list