Skip to content

sem-speed-test can run infinitely on some platforms #323

@jphickey

Description

@jphickey

Describe the bug
In the sem-speed-test, the main thread stops the test by doing a task delay and then deleting the worker tasks.

When running on a hard real time kernel and a single processor system, if the worker threads are a higher priority than the main thread, then the main thread never gets CPU time to stop the test and it just runs infinitely.

To Reproduce
Run the test on a single-processor system such as VxWorks or RTEMS where the originating (shell) task is a (logically) lower priority than 50, which is the priority given to the worker tasks it creates. The test will never exit because the root task never gets CPU time again to cancel the worker tasks.

Expected behavior
The test should never run infinitely, regardless of (mis-)configuration.

System observed on:
RTEMS 4.11 on i686 (QEMU)

Additional context
The worker tasks should employ some type of hard limit so they do not run infinitely even if the priority is higher than the root task.

Reporter Info
Joseph Hickey, Vantage Systems, Inc.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions