zephyr/samples/microkernel/test/test_map_priv
Andrew Boie b9a6f3b9d1 testcases: use SOURCE_DIR instead of relative #include
The build system is actually using the output directory
as the working dir for the Make session, using a symlink
to the source directory. Relative paths don't work correctly,
it only works now due to other issues in the build system
where absolute paths are being used instead for app source
files (causing other problems).

Change-Id: I2bcd82314692902f12da51c96fe912efb68bdc5e
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-02-05 20:15:25 -05:00
..
Makefile testcases: use SOURCE_DIR instead of relative #include 2016-02-05 20:15:25 -05:00
prj_arm.conf samples/microkernel: add test for private memory maps 2016-02-05 20:15:18 -05:00
prj_x86.conf samples/microkernel: add test for private memory maps 2016-02-05 20:15:18 -05:00
prj.mdef samples/microkernel: add test for private memory maps 2016-02-05 20:15:18 -05:00
README.txt Update Title in sample project README.txt files 2016-02-05 20:15:21 -05:00
testcase.ini samples/microkernel: add test for private memory maps 2016-02-05 20:15:18 -05:00

Title: Private Memory Maps

Description:

This test verifies that the microkernel memory map APIs operate as expected.
This also verifies the mechanism to define private memory map and its usage.

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

Building and Running Project:

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

    make qemu

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

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:

tc_start() - Test Microkernel Memory Maps
Starts RegressionTask
Function testMapGetAllBlocks
MAP_LgBlks used 0 blocks
  task_mem_map_alloc OK, p[0] = 001040a8
MAP_LgBlks used 1 blocks
  task_mem_map_alloc OK, p[1] = 00103ca8
MAP_LgBlks used 2 blocks
  task_mem_map_alloc RC_FAIL expected as all (2) blocks are used.
===================================================================
printPointers: p[0] = 001040a8, p[1] = 00103ca8,
===================================================================
Function testMapFreeAllBlocks
MAP_LgBlks used 2 blocks
  block ptr to free p[0] = 001040a8
MAP_LgBlks freed 1 block
MAP_LgBlks used 1 blocks
  block ptr to free p[1] = 00103ca8
MAP_LgBlks freed 2 block
MAP_LgBlks used 0 blocks
===================================================================
printPointers: p[0] = 00000000, p[1] = 00000000,
===================================================================
Starts HelperTask
Function testMapGetAllBlocks
MAP_LgBlks used 0 blocks
  task_mem_map_alloc OK, p[0] = 00103ca8
MAP_LgBlks used 1 blocks
  task_mem_map_alloc OK, p[1] = 001040a8
MAP_LgBlks used 2 blocks
  task_mem_map_alloc RC_FAIL expected as all (2) blocks are used.
===================================================================
RegressionTask: task_mem_map_alloc_wait_timeout timeout expected
RegressionTask: start to wait for block
HelperTask: About to free a memory block
RegressionTask: task_mem_map_alloc_wait_timeout OK, block allocated at 00103ca8
RegressionTask: start to wait for block
HelperTask: About to free another memory block
RegressionTask: task_mem_map_alloc_wait OK, block allocated at 00000000
HelperTask: freed all blocks allocated by this task
===================================================================
PASS - HelperTask.
RegressionTask: Used 1 block
RegressionTask: 1 block freed, used 0 block
===================================================================
PASS - RegressionTask.
===================================================================
PROJECT EXECUTION SUCCESSFUL