diff options
author | Nicolas Morey-Chaisemartin <nmorey@kalray.eu> | 2015-10-28 16:32:08 +0100 |
---|---|---|
committer | Maxim Uvarov <maxim.uvarov@linaro.org> | 2015-11-25 17:52:49 +0300 |
commit | 0fefcbebeba8caaf57407c7062ae0d42bdb590e5 (patch) | |
tree | 52f1f75e965f67501653155e4ac89472cd7d2b0b /platform | |
parent | 5fe9da3fe06fb3dbd6e41617c7e73c4dcdb21c7a (diff) |
linux-generic: pool: add implementation for buffer alloc/free multi
Signed-off-by: Nicolas Morey-Chaisemartin <nmorey@kalray.eu>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Diffstat (limited to 'platform')
-rw-r--r-- | platform/linux-generic/odp_pool.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/platform/linux-generic/odp_pool.c b/platform/linux-generic/odp_pool.c index 9117cc81e..9859ff6d9 100644 --- a/platform/linux-generic/odp_pool.c +++ b/platform/linux-generic/odp_pool.c @@ -549,6 +549,13 @@ odp_buffer_t odp_buffer_alloc(odp_pool_t pool_hdl) odp_pool_to_entry(pool_hdl)->s.params.buf.size); } +int odp_buffer_alloc_multi(odp_pool_t pool_hdl, odp_buffer_t buf[], int num) +{ + size_t buf_size = odp_pool_to_entry(pool_hdl)->s.params.buf.size; + + return buffer_alloc_multi(pool_hdl, buf_size, buf, num); +} + void odp_buffer_free(odp_buffer_t buf) { odp_buffer_hdr_t *buf_hdr = odp_buf_to_hdr(buf); @@ -560,6 +567,14 @@ void odp_buffer_free(odp_buffer_t buf) ret_local_buf(&pool->s.local_cache[local_id], buf_hdr); } +void odp_buffer_free_multi(const odp_buffer_t buf[], int len) +{ + int i; + + for (i = 0; i < len; ++i) + odp_buffer_free(buf[i]); +} + void _odp_flush_caches(void) { int i; |