zephyr/tests/kernel/pending
Andy Ross d1200d2155 tests: Never disable SMP
Disabling SMP mode for certain tests was a one-release thing, done to
avoid having to triage every test independently (MANY are not
SMP-safe), and with the knowledge that it was probably hiding bugs in
the kernel.

Turn it on pervasively.  Tests are treated with a combination of
flagging specific cases as "1cpu" where we have short-running tests
that can be independently run in an otherwise SMP environment, and via
setting CONFIG_MP_NUM_CPUS=1 where that's not possible (which still
runs the full SMP kernel config, but with only one CPU available).

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2019-09-26 16:54:06 -04:00
..
src
CMakeLists.txt
prj.conf
README.txt
testcase.yaml

Title: Preemptible Threads Pending on kernel Objects

Description:

This test verifies that preemptible threads can pend on the following
kernel objects: FIFOs, LIFOs, semaphores and timers.

--------------------------------------------------------------------------------

Building and Running Project:

This project outputs to the console.  It can be built and executed
on QEMU as follows:

    make run

--------------------------------------------------------------------------------

Troubleshooting:

Problems caused by out-dated project information can be addressed by
issuing one of the following commands then rebuilding the project:

    make clean          # discard results of previous builds
                        # but keep existing configuration info
or
    make pristine       # discard results of previous builds
                        # and restore pre-defined configuration info

--------------------------------------------------------------------------------

Sample Output:

***** BOOTING ZEPHYR OS vxxxx - BUILD: xxxxx *****
tc_start() - Test Preemptible Threads Pending on Kernel Objects
Testing preemptible threads block on fifos ...
Testing fifos time-out in correct order ...
Testing  fifos delivered data correctly ...
Testing preemptible threads block on lifos ...
Testing lifos time-out in correct order ...
Testing lifos delivered data correctly ...
Testing preemptible thread waiting on timer ...
===================================================================
PASS - task_monitor.
===================================================================
PROJECT EXECUTION SUCCESSFUL