diff options
author | Sam Nelson <sam.nelson@ti.com> | 2016-11-02 13:14:47 -0400 |
---|---|---|
committer | Sam Nelson <sam.nelson@ti.com> | 2016-11-15 11:11:57 -0500 |
commit | e49bbdf4c22953365ca926c2a8c6ab878666aa67 (patch) | |
tree | bbe57fb2cfa7dfbe5298a73642139d7c25d008cb | |
parent | 61861f572d524238c48c44a66861eec04a680521 (diff) | |
download | linuxutils-e49bbdf4c22953365ca926c2a8c6ab878666aa67.tar.gz |
tests: Update apitest to exercise dmabuf export
Signed-off-by: Sam Nelson <sam.nelson@ti.com>
-rw-r--r-- | src/cmem/tests/apitest.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/cmem/tests/apitest.c b/src/cmem/tests/apitest.c index 91b3a37..8f5ef0b 100644 --- a/src/cmem/tests/apitest.c +++ b/src/cmem/tests/apitest.c @@ -55,6 +55,7 @@ #define TRUE 1 unsigned int *ptrs[NUMHEAPPTRS]; +unsigned int dmabuffds[NUMHEAPPTRS]; int nblocks; unsigned int non_interactive_flag; @@ -282,15 +283,26 @@ void testPools(size_t size, int block) for (i = 0; i < num_buffers; i++) { ptrs[i] = CMEM_alloc2(block, size, ¶ms); if (ptrs[i] == NULL) { - printf("error re-allocating %d heap blocks\n", num_buffers); + printf("error re-allocating %d heap block\n", i); + break; + } + } + + /* export buffers as dma_buf */ + printf("exporting %d pool blocks...\n", num_buffers); + for (i = 0; i < num_buffers; i++) { + dmabuffds[i] = CMEM_export_dmabuf(ptrs[i]); + if (dmabuffds[i] < 0) { + printf("error exporting %d heap block\n", i); break; } } + printf("...done, freeing pool blocks...\n"); for (i = 0; i < num_buffers; i++) { rv = CMEM_free(ptrs[i], ¶ms); if (rv < 0) { - printf("error freeing blocks\n"); + printf("error freeing block %d\n", i); break; } } |